2012-04-26 63 views
3

在Linux上使用git 1.7.10我想在約100個提交的分支上使用git rebase -i。我經常但並不總是遇到這個問題:Git rebase - 交互塊在index.lock

我已經指出我想做出哪些改變...例如。我只是在上游部分附近做了一個reword,git一直運行,並在應用提交時在命令行中顯示一個計數器:像[17/100] ...

這通常應該是一個相當平穩的操作,但通常它停止在中間某處說:

[拆卸HEAD 5e1a3c8]提交消息
作者:用戶名
1文件改變時,14個插入(+),3個缺失( - )
致命:無法創建'/ [存儲路徑] /。git/index.lock':存在文件。

不能申請05e6b8ef其他提交信息

當我運行的git變基--continue我得到顯示當前的提交信息提交,當我關閉文件git的重訂繼續,但它忽略了承諾。 ..這是相當無用的,所以現在我只是做 - 雖然 - 可以,但它是一種痛苦...

也許有可能手動提交有問題的提交,然後 - 繼續,但我沒有'噸進入了那個呢。

在任何情況下,當我去檢查index.lock不存在。也許它存在的時候,當git想創建它,但它肯定被刪除之前,我可以用文件瀏覽器來看它...

ps:我似乎無法重現,如果我不重新綁定時不會打開gitg。

任何線索?

更新:更新到gitg 2.6似乎已經解決了這個問題

回答

3

所創建的文件,以確保兩個客戶端不相互對同一存儲庫工作造成干擾。我曾經用torgoisegit解決這個問題。它也可能發生在其他時間,這只是一個互動的重新組織是一個相當密集的操作,所以你更有可能擊中它。在進行rebase之前關閉gitg和其他客戶端。

+1

是的,這太可怕了。我可以忍受鎖爭議,這意味着我需要退出一個客戶端應用程序,但我花了一段時間才意識到爲什麼我實際上丟失了大型rebase上的數據。 – ches 2013-02-12 22:14:30

相關問題