我可以使用git提交文件,但在执行git svn dcommit时会自动忽略它吗?

时间:2012-03-08 15:39:16

标签: git git-svn gitignore svnignore

我现在开始在SVN办公室采用Git作为我的个人工作流程,所以git-svn是我将依赖的工具。我遇到的一个我不知道如何解决的问题是如何忽视一个方向。

我的具体用例是我们的ant构建文件引用了svn和svnversion之类的东西。显然,如果我使用git-svn,我不打算使用其中任何一个。我已经在我的本地build.xml中使用git等效替换了它们,这些工作正常。

但是,我显然不想在git svn dcommit中提交更改。我想在本地保留这个更改,并在本地提交它,所以我不会丢失它,但我不希望它再次被提交回主SVN仓库,因为它会破坏整个公司对SVN的使用, 如果我做。在this question中提供了仅使用SVN的类似案例。

是否有任何解决方案可以让我在本地提交build.xml,继续从SVN(其中包含许多与SVN无关的内容)进行build.xml更改,并且永远不会使用dcommit提交备份,每次我尝试提交都没有跳过箍?

1 个答案:

答案 0 :(得分:5)

是的,你可以。

如您所述,您无法gitignore已跟踪的文件。但你可以做的是告诉你的索引它应该假装某些文件没有变化:

git update-index --assume-unchanged <file>

如果您想要停止忽略该文件的更改(例如,因为您对build.xml进行了更改,而您需要与其他团队成员共享),请使用:

git update-index --no-assume-unchanged <file>

警告:如果您直接使用git add <file>添加文件,则会认为您确实想要添加该文件,而--assume-unchanged指令将是忽略。