What does it mean when Source Control Explorer shows both branch and merge for a changeset?

一世执手 提交于 2019-12-20 09:56:50

问题


I am trying to understand the history of my codebase, which resides in TFS 2005, and I encountered a changeset where all changes were marked as both branch and merge.

Name    Change           Folder
------------------------------------------------
A.cs    merge, branch    $/Root/Solution/Project  

I am unable to find anything (especially on MSDN) describing what the various combinations of Add, Edit, Delete, Branch, Merge, Undelete, Encoding, etc mean. Each is pretty self explanatory when used alone and some do not make sense together like Add and Delete so I am looking for information on the legal combinations and what they mean.


回答1:


Merge can be combined with anything except Add. On its own, Merge just means that (1) whatever happened is the result of invoking the Merge command (2) when you checkin, TFS will record the appropriate merge history metadata in addition to the changes themselves. The remaining operation(s) in the list of changetypes tells you exactly what kind of change is being applied to the target item. Thus:

Merge, Branch = an item that exists in the source branch but not the target branch is being copied over to the target for the first time




回答2:


This might make sense if the file were created during a branch operation and changes from the source branch were then merged into the new branch without having checked in at any point.



来源:https://stackoverflow.com/questions/2291249/what-does-it-mean-when-source-control-explorer-shows-both-branch-and-merge-for-a

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!