我跑了git commit -a
,然后它改变了我没有故意触摸的红宝石宝石。继承人git status
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: api/gems/file_service (new commits)
我想要的是将该文件准确地放在原始文件上,以便我不会对其进行任何更改。
我试过了:
git pull —rebase master
git fetch; git reset --hard origin/master
但是git状态仍然显示同样的事情。也:
git checkout -- api/gems/file_service
但仍然:modified: api/gems/file_service (new commits)
我认为这些命令应该擦除我对目录所做的任何本地更改。为什么git仍然认为某些内容会发生变化?
答案 0 :(得分:1)
api/gems/file_service
看起来像一个子模块。尝试运行git submodule update
以检查超级项目所期望的提交。
man git-submodule的更多信息。