2012-02-15 80 views
3

在ClearCase中,您可以“劫持”一个文件,这意味着更改管理系统可以让您对其进行更改,但它不会尝试提交这些更改,或者尝试在最新更改时更新该文件。这对配置文件或只是生产需要的黑客类(例如加密消息的缓慢过滤器等)很有用。如何在Subversion中执行“劫持”,就像在ClearCase中一样?

有没有办法在Subversion中做到这一点?

+0

此功能的使用情况看起来很糟糕 – Simon 2012-02-16 18:46:56

+0

@Simon如果你在我的回答中转到第二个链接,他们承认有时间。在开发过程中关闭验证或覆盖设置以更快部署是常见情况。 – ArtB 2012-02-16 19:00:11

+0

我没有在链接中看到任何可以证明您的版本控制系统崩溃的证据。时间戳例子不是非常有说服力的例子。有没有IDE可以搞砸你的文件?这看起来像一个非常糟糕的功能给我。 – Simon 2012-02-16 19:23:56

回答

2

在Subversion中没有真正的等价物,因为这些文件可以在Subversion的工作目录中直接写入。

您可以忽略file in subversion on commit(使用TortoiseSVN),它允许您忽略在本地完成的当前修改,同时将该文件保持在版本控制之下。
这与ClearCase中的“劫持”文件非常相似。


OP ArtB问一个命令行的解决方案,我建议using changelist(如svn changelist),这是他在his answer总结(upvoted)

,你会看到采取了这种做法:

+0

似乎很熟悉用户界面,但是如何从命令行执行此操作? – ArtB 2012-02-15 16:53:01

+0

@ArtB我引用的问题(http://stackoverflow.com/questions/895548/subversion-ignore-modifications-to-a-file-locally-on-one-client-only)提及替代方案(changelists:http:///svnbook.red-bean.com/en/1.6/svn.ref.svn.c.changelist.html) – VonC 2012-02-15 19:51:03

2

这是一个新的答案,可以更好地总结VonC帮助我带来的结果。答案是取文件add it changelist,名称为“ignore-on-commit”(见:,不包括来自提交清单的项目)。所以svn命令本身就是svn changelist ignore-on-commit $target_file

+0

好点。 +1。我更新了我的答案以获得更多可见性,并添加了几个对其他类似答案的参考。 – VonC 2012-02-16 19:24:00

相关问题