我们的团队有 125 多人,我们使用 tortoise SVN 进行版本控制。我们有一个 excel 表,每个用户都必须在一天结束前更新他们的日常工作,但问题是没有人在进行更改之前更新(SVN 更新)excel 文件,并且由于添加了详细信息的那个人失踪了。所以为了避免这种情况,我想要一个 svn 提交后脚本,强制 svn 更新命令到每个人的工作副本,这样无论何时他们打开他们的工作副本,它都会是最新的。请帮我将它应用到我的存储库
我们在 Windows 客户端上使用 tortoise svn,并且已将 tortoise svn 与 collabnet team-forge 集成
答案1
复制自我对 stack overflow 上同一问题的回答:
不,你不会想要那样。这可能会毁掉正在进行的工作。而且如果多人同时尝试编辑,那也无济于事。
您想要的是一种告诉用户“其他人正在编辑此文件,请不要触碰它”的方法。
执行此操作的方法是svn:needs-lock
在任何二进制文件(例如 Excel 电子表格)上设置属性。
使用此属性,文件在每个人的工作副本上都变为只读。要编辑文件,首先使用svn lock
使文件可写,并阻止其他人锁定或提交文件。然后,当您完成更改并提交后,锁定就会消失,其他人可以获得锁定并进行更改。
如果您的文件版本已过期,则获取锁将失败,从而强制更新。
但是请注意,更新时不要打开文件,否则可能会覆盖传入的更改。