我正在使用 Subversion 来管理我的 python 代码。但我不知道如何放置我的配置文件的文件属性。
例如,我在我的开发平台上签入了配置文件。我想确保
- 检出配置文件后。SVN up 进程应该忽略修改后的配置文件。
- 在服务器端,我有黄金配置文件。因此,SVN 提交也应该忽略配置文件。
我不知道如何设置配置文件的属性,所以我在这里寻求帮助。
提前致谢
这足以出现在 Subversion 常见问题解答中
短版:创建(和版本)一个“模板”配置文件。用户签出 WC,制作一个文件系统本地(不是svn
)副本,Subversion 将忽略该副本,然后修改该副本。
你可能想看看我的预提交钩子。
但首先,您需要从您的 Subversion 存储库中删除该配置文件。相反,添加一个开发人员可以复制和使用的配置模板。
从存储库中删除配置文件后,您希望设置svn:ignore
为忽略它。svn add *
这样,如果用户执行 a或在执行 a 时看到它,它就不会被意外添加svn status
。
但是,如果你想绝对确定这个配置文件永远不会添加到项目中,你需要一个 pre-commit 钩子,如果用户确实添加了它,它将拒绝提交。
为什么不告诉 SVN 忽略该文件?
$ cd path/to/config/file
$ svn delete --keep-local config.file
$ svn propset svn:ignore config.file
$ svn commit
它的作用是首先告诉 SVN 它应该停止跟踪文件 ( svn delete
),然后我们svn:ignore
在文件所在的目录上设置 poperty,然后我们提交这些更改。
如果您仍然希望配置文件被 SVN 跟踪,那么您可以提交您的更改(不包括对文件的修改),或者将文件外部化并确保在提交时忽略外部。