Scenario:
- Programmer creates a branch for project 'foo' called 'my_foo' at revision 5
- Programmer makes multiple changes to multiple files as he works on the 'my_foo' feature.
- At the end of each major step, say adding several new functions to a class, the programmer does an
svn commit
on the appropriate files therefore committing them to the branch - After several weeks and many commits later (each commit having a commit log describing what he did), the programmer merges the branch back into the trunk:
#Assume the following is being done from inside a working copy of the trunk:
svn merge -r 5:15 file:///path/to/repo/branches/my_foo
Hazzah! he's merged all his changes back into trunk! There's much rejoicing and drinking of Mountain Dew.
Now let's say another programmer comes along a week later and updates their working copy from revision 5 to revision 15. "Wow", they say. "I wonder what's changed since revision 5". The programmer then does an svn status
on their working copy and they get something like this:
------------------------------------------------------------------------ r15 | programmer1 | 2010-03-20 21:27:04 -0400 (Sat, 20 Mar 2010) | 1 line Merging Version 2.0 Changes into trunk ------------------------------------------------------------------------ r5 | programmer2 | 2010-02-15 10:59:55 -0500 (Mon, 15 Feb 2010) | 1 line Added assets/images/tumblr_icon.png to trunk
What the heck happened to all the notes that the other programmer put in with all of his commits in his branch? Do those not get pulled over during a merge? Am I crazy or just forgetting something?