如何永久防止文件的特定部分在git中提交?

bou*_*tta 11 git git-svn gitignore

我已经使用git-svn克隆了一个远程SVN存储库。我已经以代码编译的方式修改了此克隆存储库中的pom.xml文件。此设置对我来说是专有的。因此,我不想将更改推回远程仓库。

有没有办法防止文件的此(部分)更改被提交到存储库中?我知道我可以使用个人分支这一事实,但这将意味着一定的合并开销。还有其他方法吗?

我已经研究过这个问题,这一个,但它们对于相当时间的变化。

更新:我也知道.gitignore的可能性,但这意味着要完全排除该文件。

Dol*_*nor 5

编辑:您要问的是不可能的,我没有看到“部分”部分。我知道您只能提交文件的一部分,但是不能忽略文件的一部分。您将需要使用update-index技巧来避免将其包含在“状态”中,并且每次您从远程数据库进行变基/合并时都将需要存储该文件,然后取消隐藏您的修改并使用update-忽略您的修改-指数。我不知道您是否可以为一系列git命令创建一个git别名,因此使用一个命令就可以执行所有这3个命令来避免麻烦

使用.gitignore文件,也不要将其推送到远程存储库:忽略.gitignore文件本身

在您的.gitignore中,您应该有

 .gitignore
 path/to/pom.xml
Run Code Online (Sandbox Code Playgroud)

.gitignore文件可以位于工作树的根目录中,也可以位于您想要/需要的任何子目录中

  • 他只想忽略文件的一部分 (2认同)