I've been encountering a little quirk with TFS lately. A good chunk of time when I merge from one branch to another TFS does something funky with project references. If I let TFS handle the merging whenever possible, it will insert both a reference to the source branch and the target branch. Depending on whose machine you try it from, it may pick BRANCH1 for the reference or BRANCH2 for the reference at compile time.
Has anyone else seen this happening and have any idea how to get it to stop short of manually merging the csproj file every time?