私もこれを見ました。これは 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 (最新リリース) をインストールすると、ファイルを追加できますが、コミットしようとするとエラーが発生します。