我们的应用程序中有一个开发设置文件,需要在某个位置,但在机器之间的内容各不相同。
我们要做的是提交存储文件的“基本”版本,任何人都可以检出,但是subversion会忽略对文件的更改以防止其他人重新检入。这样的事情可能吗?
感谢您的帮助!
答案 0 :(得分:3)
使用ignore-on-commit更改列表TSVN功能(是的,每个客户端 )
虽然没有广泛使用,但Subversion中仍然存在锁模型(而不是分支合并)。您可以提交并锁定(并且永不解锁)您的文件。如果锁定将在特殊的“储物柜”用户下执行,则任何人都无法错误地解锁
关于妄想狂欢的权利
hg ci -X filename
将从提交的变更集中排除版本化文件名,即使文件名已更改,ci -X也可能被定义为ususal ci的替换别名
答案 1 :(得分:1)
我担心这是不可能的。
通常,该过程是创建具有不同扩展名的文件的“分发”版本,并且svn ignore
是正常文件。在新的结帐时,您必须手动将“dist”文件复制到其最终名称。
我经常将它用于我的makefile配置:
如果您可以接受这个,请查看this question。
答案 2 :(得分:1)
我碰巧有一个pre-commit hook,可以完全按照自己的意愿行事。你可以设置它,所以只有你能够对这个文件进行更改。它还可以确保文件在其上设置了正确的属性,甚至根据其名称完全禁止新文件。
它需要Perl,它包含所有Unix和Linux发行版以及Mac。你也可以获得Windows的Perl。钩子不需要非标准的Perl模块。但是,它可以使用Net :: LDAP(可选模块),因此您可以根据LDAP组设置权限(如果使用Windows Active Directory)。