某些 git 指令(diff、log)需要 sudo 權限

某些 git 指令(diff、log)需要 sudo 權限

在我安裝的 Ubuntu 17.10 上,某些 git 命令需要 sudo 權限才能正常運行(如果沒有 sudo,它們會立即返回並且不列印任何輸出),而其他命令則不需要。對於我電腦上的每個 git 儲存庫來說,這個問題都是相同的,因此它似乎與任何特定儲存庫中的權限無關。這些 git 命令要求須藤:

  • 差異
  • 紀錄
  • 展示

那些做不是需要須藤:

  • 添加
  • 犯罪
  • 地位
  • 分支
  • 查看

我完全被難住了,特別是允許/禁止命令的模式。有進一步調試的解決方案/建議嗎?

編輯:新存儲庫中問題仍然存在。資料夾的權限(來自ls -la):

總計 28
drwxr-xr-x 3 莫滕莫滕 4096 六月 5 20:52 。
drwxrwxr-x 33 莫滕莫滕 4096 六月 5 20:50 ..
drwxr-xr-x 8 莫滕莫滕 4096 juni 5 20:53 .git
-rw-r--r-- 1 莫滕莫滕 0 juni 5 20:52 test.txt

答案1

您的 .git 中的某些物件的檔案所有權是否會混亂?您可以嘗試更改所有權並在不使用 sudo 的情況下再次嘗試 git 命令。

sudo chown -R morten:morten .git

請同時檢查您的 .git/config 和 ~/.gitconfig 以確保您沒有為 diff、log 和顯示需要 sudo 進行的設定。

相關內容