即使文件已更改,Git状态也是干净的

时间:2013-02-15 14:03:24

标签: windows git github

自从我第一次开始使用Git时,我花费了很多时间来处理未被触及时报告为已更改的文件,core.filemode = false解决了这些问题......但今天我反过来了问题。 (除非另有说明,否则我在Windows 7中使用Git Bash(1.7.10.msysgit.1)执行此操作。)

情况:

  1. 在我的master分支上,我做了git pull upstream master来取消最新的更改 - 这说明一切都是最新的(我仔细检查过,最后一次提交在我当地是一样的master,我的origin fork和上游Github repo所以我有理由相信这是正确的)

  2. 我修改了现有文件。 TortoiseGit 1.8.0.0中的差异显示了更改,但其覆盖仍然显示目录为干净。奇。 git status ......仍然很干净。很奇怪。

  3. 我删除了一个文件:rm Readme.md。文件消失。 git status仍然很干净。显然,git实际上不再跟踪我的文件了。

  4. (对于记录,设置core.filemode = true然后运行git status只是让我对我的Windows系统和Github之间某些模式发生变化的文件毫无意义,但仍未列出已删除的或真正修改过的文件)

    我在这里遗漏了一些东西,希望有人能告诉我它是什么!我已经通过我在Github上的fork从这台机器到同一个存储库做了几十次提交,所以我有理由相信这个环境有效,而且我一般都知道我在做什么,但显然有些东西已经改变,我不能把我的现在就用手指。

    根据要求编辑我的Git工作流程,如Bash所示(无论如何在主人身上发生问题时都没有检查新的分支):

    Emma Burrows@PC ~/Documents/Dropbox/gitproject (test)
    $ git checkout master
    Switched to branch 'master'
    
    Emma Burrows@PC ~/Documents/Dropbox/gitproject (master)
    $ git status
    # On branch master
    nothing to commit (working directory clean)
    
    Emma Burrows@PC ~/Documents/Dropbox/gitproject (master)
    $ git pull upstream master
    From git://github.com/company/gitproject
     * branch            master     -> FETCH_HEAD
    Already up-to-date.
    
    Emma Burrows@PC ~/Documents/Dropbox/gitproject (master)
    $ rm Readme.md
    
    Emma Burrows@PC ~/Documents/Dropbox/gitproject (master)
    $ git status
    # On branch master
    nothing to commit (working directory clean)
    

    Readme.md是我在Github上的分叉回购和原始上游回购中的跟踪文件。我希望有帮助吗?

    NEW EDIT 我已将文件夹从Dropbox移到本地驱动器上的本地文件夹,但问题仍然存在。必须戳戳.git文件夹。我希望能找到它的错误。

1 个答案:

答案 0 :(得分:0)

感谢所有试图提供帮助的人。将整个文件夹(包括.git文件夹)移动到本地硬盘驱动器上的另一个位置后,问题仍然存在。我只能假设不同机器上的两个repo副本试图同时同步git文件夹并导致本地仓库损坏。我最终重新克隆了文件夹(暂时不在Dropbox中),一切正常。