tags:

views:

331

answers:

2

I haven't found any good explanation of this problem, so I'm hoping someone can shed some light on it. My thought is that this is "just the way it is", but I would like to understand a little better anyways.

Here is my situation: I have a main branch, and a development branch(dev). Most developers are working in Main, but for my specific project I am working in Dev. I want to keep the code in Dev as much in sync with Main, so I do frequent merges into Dev.

The first time I merge Main->Dev, it copies file F1 which was changed in Main but not in Dev. This is great. The next time I merge Main->Dev, F1 has changed in Main again, so it should copy it (was not changed in Dev).

However, TFS tells me that both target and source have changes, even though the changes in target are exactly the same changes from Main. When this happens to a lot of files it is very cumbersome to go through and auto merge only these files.

Does anyone know why TFS does not do a better job with this situation. Does anyone know how to make merging easier in my situation?

thank you.

+1  A: 

This definitely is "Not the way it is". I have never seen this happen the way you describe. Seems there must be something amiss in your environment or the way you are working.

This does not answer you question, but I would question why "most" developers are working in Main. Main should be for stabilization and as such very few people would work directly in it; only those doing break/fixes. New coding is always done in Dev and merged to Main.

Maybe you could layout your project structure and that might give some more hints what the problem might be.

DancesWithBamboo
Well 'most' is relative. there is only myself and one other person working in the dev branch, and there are probably 15 or more people killing bugs in main. there are a bunch of other projects going on in other dev branches, which probably makes up most of our developers.I don't think there is anything special about our project structure. My dev branch was branched directly off Main. Each time I merge I see a ton of files (conflicts) that have no changes in the target branch.
TheSean
I checked the 'change' property of the files and each time I merge main->dev its listed as 'Merge, Edit'. I tried merging some of the files again this morning, but of course there were no changes since yesterday so I get "no changes to merge".
TheSean
A: 

After some testing and a few more merges, I concluded that this is "not the way it is". I could not reliably reproduce the behavior I originally observed. During subsequent merges, I did not run into the same difficulty but there was still some odd behavior I can't totally explain (not sure why I had to manually resolve conflicts when there were none in some files).

So I can't say TFS merge is deficient in any way, but there is something odd about it.

thanks.

TheSean