Lau*_*ost 6 version-control branching-and-merging tfs2012
我最近从Mecurial转到TFS 2012来处理源代码管理.到目前为止我真的很喜欢它,但我只是坚持它的一个方面,所以我希望有人在这里可以帮助我.
假设我有一个名为"Main"的分支,然后我从此分支,称之为"Feature 1".我可以在"功能1"中进行修改,然后在这一点上,Mecurial会在路上画一个分叉.
如果我然后将我的"功能1"更改合并为"主要",则Mecurial会在视觉上再次将备份加入.然后,我可以对"特征1"进行一些修改,这将导致另一个分裂,再次,Mecurial将给我视觉表示.
我在TFS中尝试过相同的内容,虽然实际的分支和合并非常简单,但是如果"功能1"中的最新更改已合并到"主要"中,或者如果有未完成的更改,则很难解决的问题是合并.
"Track Changeset"功能非常接近,让我知道"Feature 1"在某些时候已与"Main"合并,但如果自上次合并后"Feature 1"已被修改,则不会显示.
基本上我简单问的是,"我怎么能判断一个分支自上次与父母合并后是否有任何变化?"
也许我只是陷入了Mecurial用来做事的方式,但我真的很感激上述问题的一些帮助或指导.
更新:
TFS 中没有视觉指示符,但“TF.exe Merges”命令是最接近该特定功能的命令。TF.exe 合并 + 跟踪更改集 + 查看历史记录将帮助您实现这一目标。
格式:tf 合并 [源] 目标 [/recursive] [/extended] [/format:(brief|deltailed)] [/login:用户名, [密码]] [/showall]]] [/collection:TeamProjectCollectionUrl]
打开 Visual Studio 命令提示符并输入 tf.exe merge /? 更多细节。
例子:
tf.exe 合并 /recursive C:\projects\Main C:\projects\Dev
Changeset Merged in Changeset Author Date
> --------------------------------------------------------
135 162 user1 4/13/2013
146 162 User2 5/16/2013
147 167 User1 6/18/2013
Run Code Online (Sandbox Code Playgroud)
当您运行此命令时,您将获得从 MAIN 分支合并到 DEV 分支的最后一个变更集。请注意最后合并的变更集编号(在本例中为 147)。您可以返回Main分支->查看历史记录,检查Main中147之后是否添加了新的变更集。在这种情况下,您将必须进行合并,否则不行。
说得通?
另外一件事,我建议强制进行合并的开发人员在合并期间使用特定格式的签入注释,例如
"******MERGE****** Source branch name, the last changeset etc".
Run Code Online (Sandbox Code Playgroud)
这也会有帮助,但不要指望它,因为人们可能不会这样做或会犯错误。
归档时间: |
|
查看次数: |
1474 次 |
最近记录: |