作为一名经验丰富的 SVN 用户和 TFS 初学者,我对 Shelving/Unshelving 过程有一些疑问。希望一些有经验的用户可以帮助我一点。我的目的是了解搁置/取消搁置文件内容和版本规范的工作原理。为此,我将介绍一些具体情况。
我将我的(远程)工作区映射更新到 versionspec(== svn 修订版)X,我做了一些本地更改,然后搁置它们。
- 我可以将它们搁置在不同的空工作区映射中(在执行任何“获取”之前)吗?
- 我可以将它们搁置在指向 versionspec X-2 的不同工作区映射中(这些与 versionspecs 之间的代码没有相关更改)吗?
- 我可以在指向 versionspec X+2 的不同工作区映射中将它们搁置(这些与 versionspecs 之间的代码没有相关更改)?
- 我可以将它们搁置在不同的工作区映射中,该映射指向在受影响的文件/行中具有“相关更改”的不同版本规范吗?
- 我可以在不同的工作区映射中将它们搁置,指向版本规范 X+2,在 X+2 处没有“相关更改”,但在 X+1 处发生了相关更改(想象一下,在 X+1 处删除了一条线,但再次出现在 X+2) ?
在这些情况下,预期的行为是什么。我会得到任何错误/冲突吗?如果我使用本地工作空间而不是服务器工作空间,我会遇到什么不同吗?