svn忽略一个文件,但将其包含在结帐中

Joh*_*ick 9 svn

我在一个存储库中有一个项目.人们很快就会开始检查,研究它,然后再做出改变.但是在该项目中有一个文件(我自己设计的精心配置文件),每个人都必须有一份副本,但是他们会对它进行更改,这些更改永远不应该被检入(这是永远不应该被发送的)通过更新回到存储库).

所以,我希望签出项目的每个用户都能收到这个配置文件,但是我希望在所有提交中都忽略它.

到目前为止我所读到的内容让我觉得这是不可能的.看来,一旦我用这个配置文件导入项目,它就处于版本控制之下,除了删除它之外,再也没有办法忽略它.

我希望我只是误解了,解决方案很简单.

有人可以帮忙吗?

哦,如果可能的话,我需要一个命令行解决方案.很多工作都是在没有ssh连接的无头linux机器上完成的.

谢谢!

编辑:我去了cdhowie的答案.除了按照他的建议创建模板配置文件(例如app.config.template)之外,我还使用"svn propedit svn:ignore"来在提交时忽略真正的配置文件名(例如app.config).

cdh*_*wie 11

通常,您执行此操作的方式是提供用户或脚本将复制到其所属位置的模板文件.然后将忽略该文件.

例如,假设你有app.config配置文件.你会把你的app.config.template东西当作类似东西.用户必须复制并重命名该文件才能开始开发. app.config在SVN中会被忽略.

这对于更新来说并不干净,但它是关于你能获得的最好的.另一种选择是在存储库中设置访问限制,以便app.config其他任何人都不能更改.

编辑:我说这对于更新并不干净,但是第二个想法,如果开发人员正在改变这个文件,他们可能不希望你的更新破坏他们自己的设置.使用模板文件实际上对开发人员来说更容易,因为他们可以选择要自行合并的更改.

  • 这也是"官方"的答案:http://subversion.apache.org/faq.html#ignore-commit (6认同)