问题:

同一个文件被修改后,最后代码没有变(代码刚开始修改了,最后又删除还原了),文件变了,导致提交了一个空文件 git diff 提示 filemode 发生改变(old mode 100644、new mode 10075)

git 中有关 old mode 100644、new mode 10075的问题解决小结_git

解决办法 :

原来是 filemode 的变化,文件 chmod 后其文件某些位是改变了的,如果严格的比较原文件和 chmod 后的文件,两者是有区别的,但是源代码通常只关心文本内容,因此 chmod

产生的变化应该忽略,所以需要在 git 中设置一下:

在 git 中切到源码的根目录下输入以下命令:

git config --add core.filemode false

这样你的所有的 git 库都会忽略 filemode 变更。

最后之前的提交需要重新处理。

git log (回滚到修改之前的 记录 找到 commit -id)

git reset --soft ----xxxxx (commit-id)

git add xxx

git commit

git push origin HEAD:refs/for/xxx (提交的分支)

之前的提交就 废弃掉。用最新的 提交去跟踪。

That’s all!