我也見過這個。這是一個git缺陷,可能與它如何創建和修改文件有關。爲了澄清這個問題:
# mount a samba share locally.
$ mount -t cifs options //share/project /mnt/project
# The share contains a git checkout.
# Do some typical development.
$ cd /mnt/project
$ vi file ## ok
$ git pull ## ok
$ git status ## ok
$ git add file ## error!
error: unable to create temporary sha1 filename
.git/objects/8b/tmp_obj_mYE1Xi: Permission denied
## But everything from the shell seems to work.
$ ls -latr .git/objects/8b/ ## ok. empty dir.
$ touch .git/objects/8b/tmp_obj_mYE1Xi ## ok.
$ echo test123> .git/objects/8b/tmp_obj_mYE1Xi ## ok.
$ cat .git/objects/8b/tmp_obj_mYE1Xi ## ok.
test123
$ rm .git/objects/8b/tmp_obj_mYE1Xi ## ok.
在Git版本1.5.6.5(最新Debian軟件包),當您嘗試git-add
得到錯誤。如果你安裝了git 1.7.3.2(最新版本),你可以添加這個文件,但是當你嘗試提交時你會得到錯誤。
什麼桑巴配置文件的樣子,並且是用戶一樣什麼混帳期待? – dkinzer 2010-11-01 14:40:27
這個問題剛剛開始發生在我身上!我將msysGit更新爲v1.7.6.msysgit.0,但通過samba共享連接的服務器上有v1.7.2.1。 1.我不知道我之前有哪個msysGit來恢復測試。 2.升級服務器版本以查看是否有幫助。 – 2011-07-20 10:13:58
好的,這沒有幫助。運行在我的服務器上的v1.7.2.1。當我開始使用PortableGit進行其他操作時,這一切都開始發生,而且它也發生了! – 2011-07-20 10:40:56