version control - SVN: branch issue -


i started working svn. created dev branch myself only, can whatever want before merging changes trunk.

unfortunately, when had merge, has been nightmare. tree looked that:

trunk : a-b            \ dev   :     c-d-e 

i wanted bring changes e trunk. compiling , working fine on e. when merged, couldn't compile anymore. had conflict couldn't understand:

  • some functions add body changed parameter list still old one.

for ex:

void func(int parama) // rev b {    paramb++; // rev e , causing compilation error } 
  • some new files added, other weren't. svn complaining files conflicted because didn't exist in trunk. can't understand how files can created , other can't.

i have tried plenty of different options tortoise svn (i reverted dozen of time). have read lot of things branching svn. couldn't find solution simple problem. , of answers old (more 5 years).

i used branches git. , seem logical. svn totally lost! give me pieces of advice. mean regarding daily use of branches not regarding branch strategy entire project. looking advices avoid pain of merge conflicts when shouldn't occur!

any appreciated! :)

for first issue, parameters line apparently modified in b. if did not modify line on branch, svn cannot see conflict. git not able see that, way.

normally thing. if changed on trunk not in branch, want merge combine happened on trunk happened on branch. in case changes on trunk had semantic conflict (not line-wise textual conflict) branch. need manually resolve such semantic conflicts; line-based text diff's such used every version control system i've heard of cannot automatically detect or resolve such conflicts.

if did modify line on branch, svn should have marked file conflicted. when resolve conflict (e.g. double-clicking "conflicted" status in tortoisesvn's "check modifications" dialog) chance pick version of line needed, or modify line hand.

for second issue, new files introduced on branch, , not existing on trunk, should added without conflict. but, if files existed on trunk , deleted sometime after started branch, "tree conflict". " tree conflict" if added file on trunk same name new branch file, or if made changes file deleted trunk.

dealing tree conflicts painful; i'm not 100℅ clear on these think need mark resolved , svn copy file want place full file url.


Comments

Popular posts from this blog

IF statement in MySQL trigger -

c++ - What does MSC in "// appease MSC" comments mean? -

javascript - Blogger related post gadget image Resize s72-c [ Need Expert Help ] -