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