Swoogan
Swoogan

Reputation: 5558

TFS merging files that haven't changed, aren't even in the changeset

I have two feature branches off of Main, FB1 and FB2. I have a single changeset in FB1. I need the changeset in FB2, but policy forbids me from merging it into Main at this time. So I run the baseless merge commandline:

Tf merge /baseless "$/FB1" "$/FB2" /recursive

Unexpectedly, TFS reports that every single file in the entire tree needs to be merged. After searching, I can find no explanation for why this is happening. Then I explicitly stated that I just wanted the one changeset:

Tf merge /baseless "$/FB1" "$/FB2" /recursive /version:C1436

I got the same result. It still says every single file needs to be merged. But the changeset only has two altered files in it. I expect that only the two files that changed would be merged. Why is TFS not behaving as I expect?

Also, is there some way to find out why TFS wants to merge two files? When I diff any of the files they are the same, so how do I determine what TFS does see as different?

UPDATE

What actually happened was that we renamed the root folder in one of the branches (I don't remember the exact setup) and that made TFS see everything as different.

Upvotes: 2

Views: 371

Answers (1)

P. Kelley
P. Kelley

Reputation: 46

The syntax for the operation that you want is as follows. This says "Merge only changeset 1436 from FB1 to FB2."

tf merge /baseless /recursive $/FB1;C1436~C1436 $/FB2

Thanks, P. Kelley

Upvotes: 3

Related Questions