在SVN中进行单一更改

时间:2009-09-28 16:50:35

标签: svn

是否可以在不提交文件中的任何其他更改的情况下对SVN进行单个更改?

例如,我有一个文件,config.properties,在SVN下控制的源,我的本地文件副本包含许多只与我的本地环境相关的更改。但是,我想为此文件提交一个新的配置条目,以便我的队友可以选择这个,但我不想丢失我的本地更改。

有没有办法做到这一点?

4 个答案:

答案 0 :(得分:4)

我建议在svn下设置模板配置并忽略本地配置。这样你就可以做你想做的事:更新模板,与本地配置合并,你就可以了。

答案 1 :(得分:3)

不,这是不可能的。只需将该文件签出到一个单独的位置并进行更改并将其合并回您的其他更改。

答案 2 :(得分:2)

这不容易。但是,解决方法是:

  • 将修改后的config.properties复制到工作文件夹外的某个安全位置
  • revert config.properties
  • 仅应用您要提交的更改到config.properties
  • commit config.properties
  • 将备份(安全副本)复制到工作文件夹中的config.properties以获取您不想提交的更改

答案 3 :(得分:0)

在你的具体案例中,我提出了第二个沉默的建议。我从不在repo中保存配置文件的实时副本,只保留模板文件。这还有其他好处:您永远不会在更新时意外覆盖生产配置文件,您可以将敏感信息(如数据库密码)保留在存储库之外,并且每个人都可以拥有适合其需求/偏好的自己的开发设置。当需要新的配置行时,只需将其检入模板并通知其他开发人员需要将其与本地副本合并。 (或者,也许看看将配置文件抽象为随每个环境(数据库连接等)而变化的配置文件和不变更的配置文件(常量,语言变量等),这可能是回购的一部分。 / p>

那就是说,一般需要将单行换算合并到回购中,Orbman和jeffamaphone都是正确的。 (Orbman会得到我最投票的最全面答案,但我已经投了SilentGhost投票。)