我有两个声称很干净的回购。 一个最初是从另一个克隆而来,用于开发工作。
我可以看到的一些文件不一样。 然而,当我尝试拉动任何一种方式时,它表示一切都是最新的。
这怎么可能?
该文件是否以某种方式错过了提交? ......但是不管怎么说都不应该注意到差异?
我需要某种刷新吗?
答案 0 :(得分:0)
也许你在repo A分支b中有一些提交,而repo B在分支b中还没有修改(但可能在其他分支中有一些修改)
这意味着git pull B
将返回“Already up-to-date.
”
实际上忽略了那些或有差异的文件(已从索引中删除并由.gitignore
文件选择)
答案 1 :(得分:0)
为了回答我自己的问题,我决定通过克隆原始回购来解决这个非常奇怪的情况,并将存档看似破旧的回购。
我认为问题来自于双向拉动。但它不应该因为改变已经提交并被拉过来了。
也许这些侏儒正在研究这个问题。但我仍然对GIT有信心。
答案 2 :(得分:0)
我似乎遇到了同样的问题。
工作副本和指数没有显示在git状态
中存在差异cat file # show file in working copy
git show :file # show file in index/staging
这些产出有明显的差异,而git status表示这是一份干净的工作副本。
经过一番搜索,我发现该索引可能已损坏并被发现 https://makandracards.com/makandra/5899-how-to-fix-a-corrupt-git-index
rm .git/index
git reset
为我解决了这个问题。如果任何文件被暂存,它们可能会丢失,但至少现在git会看到本地工作副本中的更改。