簡體   English   中英

使用網絡驅動器作為git存儲庫

[英]Using a network drive as git repository

所以,我在網絡驅動器上創建了一個git存儲庫:

git init --bare --shared

這很好。 然后,我將它克隆到本地驅動器

git clone z:/testgit

這也很好。 然后我添加一個文件,階段和提交

git stage *
git commit -m "test commit"

並且ALSO工作正常。 但! 當我嘗試推送到原點時,我收到此錯誤。

git push origin
Counting objects: 3, done.
Writing objects: 100% (3/3), 225 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: error: unable to write sha1 filename ./objects/f3/e6e90a7465421306fae05c18153260973542e3: Permission denied
remote: fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit
To z:/testgit14
 ! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'z:/testgit'

當試圖直接在服務器上使用git stage *(在非裸git項目上)時,我得到類似的錯誤。

我可以完全訪問文件資源管理器中的驅動器,甚至可以使用git初始化存儲庫。 SSH甚至不應該在這里應用,因為它不是服務器,它是一個網絡驅動器。 我讀過的關於git的一切都說這應該有效。 我已經閱讀了幾十個“如何做”,所有人都說這些確切的步驟,但沒有人抱怨權限被拒絕,除非他們談論服務器上缺少SSH公鑰(正如我所說,不應該適用)。

我缺少什么權限? 我應該在哪里尋找並設置適當的權限?

當你嘗試創建git抱怨的文件時會發生什么?

echo test > ./objects/f3/e6e90a7465421306fae05c18153260973542e3

git可能正在創建一個新文件夾( f3 ),並且該文件夾未獲得正確的權限,這可能是由於ACL繼承配置錯誤,或者是因為本地計算機正在嘗試調整新創建的文件夾的權限並導致錯誤。

如果它是Linux,可能是因為網絡驅動器連接錯誤的掛載選項,或者umask設置不正確,但我不確定是否可以在Windows機器上更改它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM