忽略SVN提交中的锁

忽略SVN提交中的锁,svn,locking,Svn,Locking,如何使SVN在提交文件集合时忽略它面临的锁定错误?指出锁定的文件,每次您要提交整个存储库都很耗时,而SVN在提交整个文件夹时会失败,因为其中有一些锁定的文件 有什么解决方案吗?只是一个如何以积极的方式为您改变现状的想法(我已经阅读了所有的评论,因此我认为主要问题是应该是来自服务器的示例文件,但通常不会在本地更改) 这里的基本思想是为应该是示例的文件(而不是真正的配置文件)提供一个后缀来表示这一点。它类似于每次安装Subversion时使用后缀.tmpl获得的存储库挂钩。这表明存储库钩子可以通过它

如何使SVN在提交文件集合时忽略它面临的锁定错误?指出锁定的文件,每次您要提交整个存储库都很耗时,而SVN在提交整个文件夹时会失败,因为其中有一些锁定的文件


有什么解决方案吗?

只是一个如何以积极的方式为您改变现状的想法(我已经阅读了所有的评论,因此我认为主要问题是应该是来自服务器的示例文件,但通常不会在本地更改)

这里的基本思想是为应该是示例的文件(而不是真正的配置文件)提供一个后缀来表示这一点。它类似于每次安装Subversion时使用后缀
.tmpl
获得的存储库挂钩。这表明存储库钩子可以通过它来实现,但是您必须手动更改该文件的结尾

在您的情况下,应执行以下操作:

  • 找到你只想成为“单向”的文件
  • 给他们一个结尾,让每个人都看到这些文件只是一个例子
  • 有一个构建过程或手动创建该文件的副本
  • 告诉人们什么以及如何改变
  • 将文件添加到“忽略列表”中的目录中,该文件的名称通常在本地使用,这样该文件就不会意外地再次添加到存储库中
  • 您甚至可以添加一个预提交钩子,以确保不再添加这些文件
  • 您必须有一个构建过程,将示例文件复制到部署的真实名称。但无论如何,为这些任务建立一个构建过程是一个好主意

  • 我会试图找出为什么它会锁定所有内容,然后无法提交。这是不应该发生的。。。你可以写一个脚本来检查并删除锁,但我认为你最好弄清楚为什么它没有做它本来应该做的事情。你说的“忽略锁”是什么意思?它是否应该静默地不提交锁定的文件?悄悄地覆盖锁?(我不能想出一个忽略锁是一个好主意的方案。)方案很简单,您可能希望锁定一些配置文件,以便每个人都可以拥有它们,但不将它们的更改提交回服务器。配置文件毕竟是特定于环境的。但对于配置文件,这些文件无论如何都不应该经常更改。在您描述的情况下,锁存在,因此需要显式操作来提交对受保护文件的更改。您没有抓住要点。你和我都检查过一个项目。为了在本地测试项目,我们都对配置文件进行了更改,以使其符合本地计算机的设置。当然,我们不应该将文件提交回存储库,因此我们将锁定该特定文件。现在,在整个项目生命周期中,每次我们即将提交时,我们都必须将锁定的配置文件从提交列表中删除,否则它将失败。我认为这需要太多的努力,特别是如果有多个这样的文件分散在整个项目中。