Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
On Sat, 3 Dec 2005 10:27:01 -0200, Gerhard Fiedler <lists at connectionbrazil.com> wrote: >Hm... wouldn't it make sense for a branch to "inherit" all mergepoints from >the branch it was created from (prior to its creation)? So that, in this >case, B2 "knew" about (and considered) all mergepoints of HEAD up to 1.8? >Seems logical to me. I don't see a reason why it shouldn't. > Definitely *NOT*!!!! Such a presupposition from the server would completely ruin any possibilities of having several *independent* branches off of TRUNK... If you create a branch off a certain branchpoint, weather on TRUNK or another branch, you assume that the code you write will be exactly based on the branchpoint plus your edits. Having the server automerge stuff that happens on TRUNK while you are working on the branch will completely ruin this isolation, which is why you create a branch in the first place... In my view, the only allowed way for edits on TRUNK *after* the branchpoint to get into my branch code is to explicitly give a command to merge in for example HEAD *into* my branch. When I do this I expect that whatever happened on TRUNK from my branchpoint will now be merged into my working branch so it is henceforth as if the branchpoint has moved up to the current HEAD revisions. If this is done I believe CVSNT does a good job of book-keeping using the mergepoints. You will get one pointing from TRUNK into your branch and the next time you merge the backtracking will only go as far as this mergepoint. But I would not myself even allow using CVSNT if it by itself did these automerge operations when merging back the branch!! Too dangerous! The proper way is: 1. Create working branch at some point in time 2. Work and commit stuff on this branch until done 3. If the TRUNK operations should be included, then merge HEAD into the branch. 4. If this was done, then verify the code on branch to still be working properly, essentially testing all aspects of the code while still on the branch, but now with the updated TRUNK code also there. 5. When all is well, finally merge the branch back to the HEAD revision. With this sequence the code will be under control by the developer and it can be verified easily and no bogus code changes gets into the final result. /Bo (Bo Berglund, developer in Sweden)