在TFS中取笑:这是什么意思?

bre*_*sey 52 tfs shelve unshelve shelving

这是我得到的部分:当你搁置在TFS中时,它会对更改进行服务器副本,这样它们就不会丢失,但不会将它们检查到您正在处理的源代码中继/分支中.

问题:在什么情况下你会使用"取消搁置"功能?这是否意味着它将从TFS服务器中删除shelveset?你能从货架上取货吗?或者它真的只是shelveset和"真正的"源代码之间的差异描述?

Her*_*rms 64

你是如何将搁架恢复到你的机器上的,所以你可以继续使用它.它不会更改服务器上的搁置集(为此,您需要再次搁置并使用相同的搁置集名称).

我如何使用它的一个例子是在我处理它们的同时在机器之间移动更改.我将它搁置在我的台式机上,然后在笔记本电脑上取下它,然后继续在笔记本电脑上工作.

您还可以使用它与某人共享更改(用于代码审查或其他原因).你搁置了你的变化,然后另一个人可以去取消它,看看你做了什么.

Unshelving实际上并没有改变shelveset或服务器上的任何其他东西.这只是一个获取操作.


Ric*_*erg 31

赫姆斯就是现货.读他的回答.

一个重要的警告:如果你自创建了shelveset后你已经完成了Get,那么Unshelve只会回滚shelveset中包含的本地版本的文件.因此,很可能你的工作空间不一致.

一个好的做法是永远重新运行Get after your Unshelve.这可以确保您不会将时间浪费在幻像构建错误上,这实际上只是处于半新/半旧状态的副作用.它还要求您主动解决搁置集内容与最新服务器修订之间的任何冲突,而不是仅在@Checkin时间发现它们.