svn - 颠覆 : how to remove property on commit

标签 svn properties pre-commit-hook

我的情况是这样的:我在家里设置了一个 Subversion 服务器,我们也在我工作的公司使用 Subversion。

在工作中,我们使用锁定/编辑/解锁模型(主要是因为我们正在从 Visual SourceSafe 过渡,目前它更容易)。目前,这是通过在所有添加的文件上设置“needs-lock”属性来实现的(使用每台客户端机器上的 SVN 客户端配置文件的 auto-props 部分)。

但是,我不想将此模型用于我的家庭 SVN 服务器(我更喜欢编辑/合并/提交的工作方式),所以目前在我将工作 PC 上的任何内容提交到家庭服务器之后,我必须手动删除我添加的任何文件中的 needs-lock 属性。

有没有办法可以将 SVN 客户端设置为仅将此属性应用于提交给特定服务器的文件?或者我是不是走错了路:我应该在工作服务器上使用钩子(Hook)而不是客户端来添加这个属性吗?

非常感谢任何帮助或建议。

编辑:显然,您不能在服务器上执行此操作(或者至少强烈建议您不要这样做)。

最佳答案

我还编写了一个小的 Windows 批处理文件来递归删除 needs-lock已设置的任何文件夹中的属性。将这些行放入一个文本文件中:

svn propdel svn:needs-lock -R -q "%1"
svn commit "%1" -m "Removed needs-lock"

另存为remove-needs-lock.bat ,并将其位置添加到您的 PATH 环境变量中。然后你可以运行:
remove-needs-lock c:\workingcopyfoldername

而且,所有文件不再需要锁定来编辑。

关于svn - 颠覆 : how to remove property on commit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1536824/

相关文章:

python - 连接到 mercurial pretxncommit。并且不能导入请求模块?

svn - Subversion 存储库中的 Git 工作副本

file - OneLogin one.saml.properties 文件

c++ - 如何确定给定的属性是否不是从基类继承的?

javascript - 在 Javascript 中声明空对象属性的简写,有吗?

svn - 自动为新文件添加 svn 关键字属性(服务器端)

javascript - 如何只在我想提交的文件上运行 Prettier?

svn - 将 InstallShield 与 Subversion 结合使用的最佳方式是什么?

svn - gradle 'at.bxm.svntools'插件来做 'svn update'

windows - 当前的 ankhsvn 版本与当前的 svn 兼容吗?版本