是否有任何好的技术可以帮助我们了解我们的工作副本来自哪个分支(或主干)?我们最近转换为Subversion,我们正在使用发布分支。我有两个开发人员提交应该已经提交到主干的发布分支的更改。我们正在使用CI(TeamCity),因此我立即认识到了这个问题,并且能够恢复更改,但我想阻止它再次发生。特别是在Visual Studio中,很容易犯错并承诺错误的分支。
我们正在使用TortoiseSVN和AnkhSVN。
编辑添加: 只是为了澄清,我正在寻找一种方法来防止粗心的错误,我已经知道如何找到这些信息。我试图阻止两个粗心的错误:
编辑添加:我们刚刚切换到VisualSVN VS插件,它有一个工具栏,显示当前工作副本的路径。我真的很喜欢我在正确的分支上工作。
答案 0 :(得分:4)
也许你应该考虑使用预提交钩子:http://svnbook.red-bean.com/nightly/en/svn.reposadmin.create.html
然后你可以做一些事情,比如只批准那个特定分支的评论中有'for release'的签名或者类似的东西,否则返回错误信息。
答案 1 :(得分:2)
Tortoise SVN在Windows资源管理器视图中添加了列。在“详细信息”模式下,右键单击列标题以获取可用列的列表,在底部选择“更多”以获取所有可用列类型的对话框。
SVN短网址应该快速显示存储库中的位置。
但这似乎不适用于vista ......
答案 2 :(得分:2)
在AnkhSVN(在Visual Studio中)中,您的工作副本的项目URL显示在Pending Changes窗口的“Working on”字段中(View-> Pending Changes)。
当您在Pending Changes窗口或Working Copy Explorer中选择文件时,文件/文件夹的URL也会显示在Visual Studio项目窗口中(在许多情况下,甚至在解决方案资源管理器中选择文件时也是如此;但是这取决于项目类型)。
[更新:我刚刚添加了AnkhSVN issue #581以扩展提交对话框。]
答案 3 :(得分:1)
右键单击该文件夹,移至subversion选项卡,在那里显示与其链接的项目。
此外,在提交对话框中,它在对话框的顶部显示。
答案 4 :(得分:1)
从工作目录:
svn info
URL将包含工作目录指向的分支。
<编辑>看到有多少人不喜欢命令行,我从TortoiseSVN找到的关闭的东西是“repo浏览器”,似乎使用选定的分支作为回购中的起始路径。 < /编辑>
答案 5 :(得分:1)
避免重复使用工作副本。如果您在存储库中的2个位置工作,则有2个工作副本,名称相应,如:Project-trunk,Project-release。
答案 6 :(得分:1)
这是一个可能有用的简单想法:
创建一个名为“branch_XX”(或任何名称)的空文本文件,并将其添加到您的分支
提交此项,然后当您切换到主干时,该文件将不会出现在解决方案资源管理器中。
这听起来很愚蠢......但它确实可以解决问题。
我真的希望他们会添加一些可能标记我们正在使用的分支而不会转到其他窗口。
答案 7 :(得分:0)
在AnkhSVN(在Visual Studio中)中,右键单击您的项目/解决方案,然后右键单击Source Control - >颠覆 - >在资源库资源管理器中选择它会自动选择您当前正在处理的分支(即您切换到的分支机构)。
我不认为AnkhSVN的已接受答案适用于Projects,因为我总是在" Pending Changes"中看到相同的URL。甚至在我使用选项" Switch Project"在一个项目上。