有時候我會嘗試同時讀取和寫入Git存儲庫。 但是之後當我嘗試提交文件時,我收到以下錯誤消息:LibGit2Sharp索引已鎖定 - 錯誤
libgit2引發了一個錯誤。 Category = Index(LockedFile)。 索引被鎖定。這可能是由於併發或崩潰 進程。
提交按預期完成,爲什麼我收到此錯誤消息?我如何擺脫它?
(如果LibGit2Sharp顯影劑看到這一點:有一個在錯誤消息中的拼寫misstake:concuRRRent):d
有時候我會嘗試同時讀取和寫入Git存儲庫。 但是之後當我嘗試提交文件時,我收到以下錯誤消息:LibGit2Sharp索引已鎖定 - 錯誤
libgit2引發了一個錯誤。 Category = Index(LockedFile)。 索引被鎖定。這可能是由於併發或崩潰 進程。
提交按預期完成,爲什麼我收到此錯誤消息?我如何擺脫它?
(如果LibGit2Sharp顯影劑看到這一點:有一個在錯誤消息中的拼寫misstake:concuRRRent):d
這一指數是GIT中對象數據庫和工作目錄之間的網關信道。它用於創建提交(即暫存,暫停,...)或檢出文件時。因此,同時執行這些操作可能會引發這樣的錯誤,因爲兩種操作都會競相獲得對索引的訪問權。
在該libgit2水平正在做的做出螺紋更好的體驗讀取操作的指數使用一些工作(見libgit2/libgit2#2108例如)。
然而,根據其種類,你進行讀/寫操作的,你可能不需要去通過指數:
如果LibGit2Sharp開發商看到這樣的:有一個在錯誤信息的拼寫錯誤:concuRRRent。
好抓!您是否想開一個Pull請求來幫助我們解決這個問題? ;-)
我有循環哪個階段和提交文件1000次。文件內容在每次提交後都會更改。與此同時,我正在迭代存儲庫中的所有提交以獲取文件的歷史記錄。在某些時候,我收到消息 「libgit2引發了一個錯誤。Category = Os(Error)。無法將lockfile重命名爲.git/index:訪問被拒絕。」 之後,我在每次提交後都從我的開始帖子收到錯誤消息。我能以某種方式修復信息庫嗎? – JoeLiBuDa
如果'index.lock'文件來自崩潰的進程,則可以將其刪除。這不會自動發生,因爲它可能來自併發實時進程。 –
@CarlosMartínNieto解決了我的問題!大! – JoeLiBuDa