文章内容

2019/1/28 9:33:01,作 者: 黄兵

git忽略已经被提交的文件

最近在提交的时候,有一些已经在.gitignore定义的文件以及文件夹任然提交了。

例如:在.gitignore定义如下:

*.log
*.temp
<<<<<<< HEAD
.idea/
*.pyc
=======
.idea/*
*.pyc
venv/*
>>>>>>> master

已经排除了.venv/* 文件夹下的所有内容,但是提交的时候任然会提交。

截图如下:



问题存在原因:

主要是在没有定义.gitignore文件以前,这些文件被提交,定义了.gitignore文件以后,这些更改任然被追踪。


解决方案:

git update-index --assume-unchanged venv/*

引用他人的一段话来解释一下:

git update-index --assume-unchanged 的真正用法是这样的:

  1. 你正在修改一个巨大的文件,你先对其 git update-index --assume-unchanged,这样 Git 暂时不会理睬你对文件做的修改;
  2. 当你的工作告一段落决定可以提交的时候,重置改标识:git update-index --no-assume-unchanged,于是 Git 只需要做一次更新,这是完全可以接受的了;
  3. 提交+推送。

这样就不会再提交了。

如果出现:fatal: Unable to mark file 错误,参考这篇文章:git update-index --assume-unchanged 返回 “fatal unable to mark file”


参考资料:git忽略已经被提交的文件


黄兵个人博客原创。

转载请注明出处:黄兵个人博客 - git忽略已经被提交的文件

分享到:

发表评论

评论列表