Ubuntu
Git:嘗試刪除本地分支,但由於文件鎖定而權限被拒絕
在我的 Linux 伺服器上,有幾個我想刪除的 git 分支。我使用
git branch -D branche_name
並刪除了所有這些分支,除了一個。對於這個名為feat/implement-h
我的分支,我得到了錯誤:“錯誤:無法鎖定 ref ‘refs/heads/feat/implement-h’:無法創建 ‘/data/web/xxx/xxx/.git/refs/heads/feat/implement-h.lock’:權限被拒絕” .
我最近可以訪問這台 Linux 伺服器,它已經使用了幾年,但我之前沒有訪問權限。知道如何刪除這個分支嗎?
正如 Halfgaar 所說,這可能是權限問題。我發現屬於的文件
root
往往會累積在我的 git 儲存庫中,儘管速度非常緩慢。就我而言,他們似乎經常在.git/objects
並且似乎不會在那裡引起問題。但是,如果一個
lock
文件最終屬於該文件root
顯然會成為一個問題。您可以使用以下命令檢查此類文件find ~/your/git/dir -group root -ls
我的假設是,非常偶然地,當 Git 拋出錯誤時,所有權資訊可能會損壞。