保护svn提交中的文件

Chr*_*wes 6 subclipse svn version-control svnignore

嘿,想象一个普通的webapp,log4j.properties它受版本控制.我无法添加它,svn:ignore因为它是一个强制文件.如果我为开发进行自定义更改并且我不想提交它们,我必须注意意外提交.对于一个文件,它很容易处理,有3个或更多文件,它变得令人毛骨悚然.

有没有办法从svn提交暂时禁用这些文件?它的简单提交?我正svn和我一起工作subclipse.

ang*_*son 10

处理这种情况的典型方法是执行以下操作:

  1. 在表明它是模板的名称下制作文件的副本
  2. 将模板提交到存储库
  3. 忽略原始文件

这样,您将有一个新的副本,在部署期间,您可以将文件从模板复制回真实文件.

这样您就不会冒这个文件提交错误更改的风险,至少对于其他版本控制系统,您不会冒险检查文件并忘记锁定的风险.

在Subversion中没有办法表明文件只是提交第一次的事物类型,所以当你将它添加到你的存储库时,你告诉Subversion跟踪该文件中的更改.除非您手动确保(或编写工具或更改工具)永不提交对此文件的更改,否则Subversion将无法帮助您.


小智 7

我对这个问题的解决方案是在我们的svn服务器上创建一个新的(有点虚拟)用户并将他添加到所有项目中,让我们称他为Locker.所以我在配置文件上设置一个锁,作为用户Locker,不应该在代码库中修改.

Etvoilà!这些文件不再被错误提交,但是如果生产系统需要对配置文件进行更新,则任何团队成员都可以强制执行锁定,或者知道Lockers凭据的人员可以更新和重新锁定文件!

也许这不是每个人的解决方案,一些公司法规可能禁止使用代理用户.