The only difficulty that might
occur is when two persons have made changes to the same file. Consider the following example (figure on the left) in which Sally has made a change to file A, commited this change and Harry wants to commit his changes. This results in an out-of-date error. Harry first has to update his file, merge Sally's changes with his. See figure on the right. Only then he might commit the merged file. The merge of Harry's and Sally's changes can happen automatically unless both made changes to the same lines in the file. Then, Harry should manually perform the merge. This is called conflict resolution. |
Subversion installs itselfs in
the context menu of Windows Explorer. To Checkout a project, create a new folder, right click and choose checkout. You will be asked for host url, user name and password. It's wise to use an empty folder! From then on you see a green 'v'-symbol appearing on each folder or file that is synchronized with the repository. In the context menu you'll find the commit and update commands. With each commit you can optionally add comment about the changes you have made. Conflict Resolution If you try to update but your file is not up-to-date, you get an out-of-date error. To solve it, do a synchronize: choose TortoiseSVN => Check for Modifications and double click on the file to be merged. In the TortoiseMerge window, you'll see at the left the version of the repository and on the right your version. All differences are indicated. In the right version you select for each line what you want. If you have resolved all conflicts, close the merge window after having saved your file. Then indicate that you resolved all conflicts by choosing Resolved from the Tortoise menu. Finally, perform a commit. If you do an update, Subversion tries to manually merge your changes with that of the server. For conflicts, both versions will appear in your file. Like this: <<<<<<< .mine
First your version is given and below
that of the server. * TORTOISE ======= * == TORTOISE == * >>>>>>> .r20 (Note that subversion also makes a copy of your file and the server's). Choose whatever you want, mark the file as resolved and commit. |