在ClearCase中,您可以“劫持”一个文件,这意味着更改管理系统可以让您对其进行更改,但它不会尝试提交这些更改,或者尝试在最新更改时更新该文件。这对配置文件或只是生产需要的黑客类(例如加密消息的缓慢过滤器等)很有用。如何在Subversion中执行“劫持”,就像在ClearCase中一样?
有没有办法在Subversion中做到这一点?
在ClearCase中,您可以“劫持”一个文件,这意味着更改管理系统可以让您对其进行更改,但它不会尝试提交这些更改,或者尝试在最新更改时更新该文件。这对配置文件或只是生产需要的黑客类(例如加密消息的缓慢过滤器等)很有用。如何在Subversion中执行“劫持”,就像在ClearCase中一样?
有没有办法在Subversion中做到这一点?
在Subversion中没有真正的等价物,因为这些文件可以在Subversion的工作目录中直接写入。
您可以忽略file in subversion on commit(使用TortoiseSVN),它允许您忽略在本地完成的当前修改,同时将该文件保持在版本控制之下。
这与ClearCase中的“劫持”文件非常相似。
的OP ArtB问一个命令行的解决方案,我建议using changelist(如svn changelist
),这是他在his answer总结(upvoted)
,你会看到采取了这种做法:
这是一个新的答案,可以更好地总结VonC帮助我带来的结果。答案是取文件add it changelist,名称为“ignore-on-commit”(见:,不包括来自提交清单的项目)。所以svn命令本身就是svn changelist ignore-on-commit $target_file
。
好点。 +1。我更新了我的答案以获得更多可见性,并添加了几个对其他类似答案的参考。 – VonC 2012-02-16 19:24:00
此功能的使用情况看起来很糟糕 – Simon 2012-02-16 18:46:56
@Simon如果你在我的回答中转到第二个链接,他们承认有时间。在开发过程中关闭验证或覆盖设置以更快部署是常见情况。 – ArtB 2012-02-16 19:00:11
我没有在链接中看到任何可以证明您的版本控制系统崩溃的证据。时间戳例子不是非常有说服力的例子。有没有IDE可以搞砸你的文件?这看起来像一个非常糟糕的功能给我。 – Simon 2012-02-16 19:23:56