首页 文章

保护svn提交中的文件

提问于
浏览
6

嘿,想象一个带有 log4j.properties 的普通webapp,它受版本控制 . 我无法将其添加到 svn:ignore ,因为它是强制文件 . 如果我为开发进行自定义更改,并且我不容易处理,有3个或更多文件就会变得令人毛骨悚然 .

有没有办法从svn提交暂时禁用这些文件?它的简单提交?我正在使用 svnsubclipse .

3 回答

  • 1

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

    • 使用指示它是模板的名称制作文件的副本

    • 将模板提交到存储库

    • 忽略原始文件

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

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

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

  • 7

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

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

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

  • 10

    我这样做的方法是让文件名为log4j.properties.server,然后我设置了我的部署脚本来复制.server文件而不是普通文件 .

相关问题