I've read that when updating a branch I should use merge revisions, but to me it seems that merge tree is almost always the better choice for whatever you're doing.
I've always coded solo, but recently there's been value in collaboration, so I've been figuring out how to integrate TortoiseSVN in the team.
This is a repeat of a question asked 12 year ago. However, one of the options is now deprecated, and I feel like the only answer didn't really explain in any detail (like why), and I've had long arguments with chatgpt. The official documentation was my original source of confusion.
For example, the documentation doesn't explicitly state the revision of the working copy to perform the merge on, except to state if trunk has been updated, to specify that revision in merge (From). but tests i've run show this doesn't work whether the working copy of trunk is either branch creation or head. I've come up with safe rules for merging trees, but i remain uneasy with the "plethora" of statements saying i should use merge revisions (in reverse).
As far as i can tell, merge revision is only useful if you only wanted a specific change, but why you would want that I'm not sure. If you're bringing a branch upto date, wouldn't you just want the whole trunk? I've run tests using merge tree for this, and it seems perfectly fine to me. Perhaps there's been multiple revisions in trunk to a single line of code - you'd want merge tree to avoid (re)iterating over each one.
and yet the few references i find all assert that when updating a branch, you should use merge revisions, not merge tree, without (i feel) any satisfactory answer as to why.
"As long as you manage to get your changes across correctly, you can use whatever method you like."