2013-04-22 44 views
0

我有一個非常奇怪的問題:git突然停止了能夠檢測到我修改了文件。我可以去到存儲庫的文件夾,更改一個跟蹤文件,git status會說:Git找不到跟蹤文件中的更改

# On branch master 
nothing to commit (working directory clean) 

這是特別奇怪,因爲它採取效應逐步顯現。首先git-gui停止了能夠注意文件更改,但命令行繼續工作。然後我重新啓動了機器,現在既沒有gui也沒有命令行可以發現已更改的文件。

我最好的猜測是我的PATH有問題。這將解釋重新啓動機器使其變得更糟,以及命令行如何能夠繼續運行更長時間(它是在PATH正確時啓動的)。同事有時使用我的機器,所以他們可能已經安裝了修改路徑的東西。

如果它是相關的,這是我的PATH:

echo $PATH 
/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin 
:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin 
:/usr/local/git/bin 

的機器問題是一個Mac mini的。請注意,xcode仍然可以檢測到更改並執行提交。但是這隻會讓我感到如此,直到我需要一些命令行特定功能。

我不確定如何繼續。我如何診斷有什麼問題?如果問題是PATH,那麼我要重新排序/刪除/添加什麼?其次,我該如何弄清楚首先破壞了什麼?

+0

只有我的猜測,試試'git config --global core.trustctime false'。如果此選項爲false,則會忽略索引與工作樹之間的ctime差異。 – pktangyue 2013-04-22 03:02:37

+0

@pktangyue嘗試將core.trustctime設置爲false。對問題沒有影響。 – 2013-04-22 03:55:05

回答

0

原來我的同事做了另一個版本庫的克隆。我以爲我在修改原始資料庫中的文件,當時我在xcode中修改了它們,但實際上我是在克隆的資料庫中修改它們。

git status暫時在命令行中工作,因爲該命令行實例由我的同事留下並指向正確的目錄。終端只顯示當前目錄的名稱,我不知道它嵌套在錯誤的目錄中。 git-gui'先破了',因爲我的同事沒有使用git-gui,所以沒有把它指向克隆。

所以,我們只是一個愚蠢的錯誤。 git工作正常。

+0

那麼發生......但不應該使用多用戶操作系統;) – 2013-04-23 13:41:43