MSDN documentation列出了四个选项,解释有限:
答案 0 :(得分:3)
覆盖:将盲目地覆盖您尚未挂起以进行编辑的可写文件。如果您已将文件标记为“可写”,那么您违反了与TFS的合同,并且它假定您已完成此操作(例如,修改文件而不进行结帐,因为您正在脱机工作)。这通常会在文件上产生可写冲突,但如果指定此标志,则可写文件将被覆盖。
这仅适用于服务器工作空间(本地工作空间始终可写)。这对您已挂起以进行编辑的文件没有任何影响。对于在本地编辑并在服务器上更新的文件,Get将始终产生冲突;如果要更新已签出的文件,则必须撤消签出(或解决与TakeTheirs
的冲突)。
全部获取:将下载每个文件并进行更新,即使TFS认为本地版本与远程版本相同,并且下载新版本也是noop。 TFS跟踪本地和远程的每个版本,因此只有在本地编辑文件而不检查它们时才有用。
如果你让它们保持可写,那么 - 如上所述 - 这将是一个可写的冲突。如果您已将它们标记为只读,则TFS会假定您没有进行任何更改,并且在执行get时不会更新它们(因为它知道文件内容未更改)。如果您手动更改了文件内容,则标记为将这些文件更新为服务器版本。
预览:只会触发事件并提供结果,指示使用给定参数下载 的内容。
重新映射:是一个聪明的选项,允许您执行就地分支切换(这对于在存储库级别分支的某些版本控制系统非常常见 - 比如Git - 但有点复杂在TFVC。)
请注意您已将$/Foo/main
映射到C:\Foo
,并完成了最新动态。如果您更新工作文件夹映射,以便$/Foo/branches/feature
现在指向C:\Foo
,然后发出Remap
获取,则服务器将仅在main
和branches/feature
之间下载已更改的文件def create
@post = Post.new(params[:post])
if @post.save
respond_to do |format|
format.html
format.js
end
end
end
,因此将本地工作区更新为功能分支是一种廉价的方法。
(如果您正在寻找一个示例,此功能存在于命令行界面和Team Explorer Everywhere中,但不存在于Visual Studio中。)