将文件删除提交到svn存储库,同时忽略其他一些本地mod

时间:2010-04-22 13:54:59

标签: svn

我有svn存储库,我已经安排了一些文件和文件夹,用svn mv在存储库中移动。我还有一些文件是要移动的文件的对等文件,这些文件具有本地修改,我只希望这些文件的子集与移动一起提交。

e.g。 svn st的输出如下:

D      foo/bar
D      foo/bar/a.txt
D      foo/bar/b.txt
M      foo/exclude.txt
M      foo/include.txt
A      foo/whiz/bar
A  +   foo/whiz/bar/c.txt
A  +   foo/whiz/bar/d.txt

要提交到存储库的移动,我需要在foo上执行提交,但这也会将修改提交到foo/exclude.txtfoo/include.txt。如果移动加上mod foo/include.txt同时排除foo/exclude.txt,我将如何仅提交删除/添加?

我觉得答案在于--depth的{​​{1}}论证,但我不清楚它是如何运作的。

2 个答案:

答案 0 :(得分:2)

为什么不提交单个文件而不是树?

$ svn ci foo/bar
$ svn ci foo/whiz
...

答案 1 :(得分:1)

使用SVN,这种行为通常是不受欢迎的。简短的回答是,不要这样做。

但当然还有其他方法(使用SVN):

  • 分支出来然后稍后合并(如果你不熟悉这个过程会很痛苦)
  • 使用foo/exclude.txt删除SVN上的svn delete --keep-local也会有效,但这也意味着该文件将在您再次svn add之前变为无版本。

你的用例是什么?你为什么需要这种行为?