I noticed that one of our merges seems to have confused our repository. On
a branch a file was moved. Following the merge to the main trunk, it
re-appeared also in its original location. However the log of the main
trunk doesn't show it ever being added there.
After some detective work, I have been able to reproduce the problem in a
I'm not sure if the problem is due to user error or due to a bug - there was
a slight twist in the way the merge was performed: The entire branch wasn't
merged. The bottom portion was merged first, and then the top portion -
skipping one of the middle revisions.
Here is the description of the scenario (using Tortoise 1.2.3 build 4719):
1. create a branch and switch to it (repository revision 3)
2. create a folder, add a file in the folder, and commit to the branch
3. create another file, not in the folder, and commit to the branch (rev
4. move the file created in step(2) to the parent directory, and commit to
the branch (rev 6)
5. switch to the main trunk
6. merge in the changes made on the branch in revision 4
7. merge in the changes made on the branch in revision 6
8. commit the merges to the main trunk
Following these steps, checkout the main branch. The file created in step(2)
appears in 2 locations!
During step(7) Tortoise indicated that the file was deleted from the folder
(as expected). However when I repeated the same scenario but using
Subversion v1.2.3 r15833, Subversion indicated the deletion of the file was
skipped. (In fact in step(8), Subversion incorrectly adds the file to the
main trunk, and does not indicate this in the change log...)
The issue for Tortoise is the difference in the reporting of the results in
step(7). Why does Tortoise indicate the file was deleted, while Subversion
indicate the deletion was skipped?
The rest of the problems shown by this scenario lie with Subversion, and
thus are not discussed here.
Warning: Copyright ResMed. Where the contents of this email and/or attachment includes materials prepared by ResMed, the use of those
materials is subject exclusively to the conditions of engagement between ResMed and the intended recipient.
This communication is confidential and may contain legally privileged information.
By the use of email over the Internet or other communication systems, ResMed is not waiving either confidentiality of, or legal
privilege in,the content of the email and of any attachments.
If the recipient of this message is not the intended addressee, please call ResMed immediately on +61 2 9886 5000 Sydney, Australia.
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Thu Dec 15 08:43:18 2005