2011-07-01 15 views
12

私はgitをウィンドウで使用しています。これは私がやったことです。マシンM1で開発を行い、M1上のリポジトリーをバックアップするためにUSBドライブM2に裸のリポジトリーを作成しました。私はこのコマンドを使ってバックアップを行なった(M1のgit bashから):gitエラー "sha1ファイル名を書き込めません...許可が拒否されました"

git push --mirror "f:\repo" 

問題なしで作業しました。 その後、新しいマシンM3を購入しました。私はM2からM3にリポジトリをクローン:

git clone "f:\repo" . 

はM3でレポにいくつかのチェックインをしました。私はこの問題を解決するにはどうすればよいの許可が を否定... SHA1のファイル名を書き込むことができません:その後、私はやった

git push --mirror "f:\repo" 

(マシンM3のGitのbashから)私はこのエラーを取得しますか?

+0

も参照してください。http://stackoverflow.com/q/3829498/119790 –

+0

私の答えはhttp://stackoverflow.com/questions/3829498/git-over-samba-unable-to- write-sha1-filename-permission-denied/6777323#6777323 –

+0

@morpheusここに回答に印を付ける必要があります。 – jcollum

答えて

4

これは別のコンテキスト(git + ssh)であっても、レポに関連付けられたACLを確認してください。
例えばblog postを参照してください。 (同様に他の興味深い提案を持っている)SOの質問「Git pull error: unable to create temporary sha1 filename」、設定して、あなたの裸のレポをやり直し、この時間を試しに示唆したように

git config core.sharedRepository true 
0

私も同じエラーを取得しますが、通常はWindowsマシン上でbashを使って "git pull"を実行するとき。

私の場合、それは.gitディレクトリを保持することによって競合を引き起こす他のアプリケーション(通常は私の場合はウイルスチェッカー)に関連しています。

私は通常、「git pull」を何度か実行することができます(同じ権限で別のハッシュ値でエラーが拒否された後に実行されます)、または急いでいると感じる場合は、 checker、git pull(パーミッションエラーなしに正常に動作する)を実行してから、ウイルスチェッカーを再起動します。

-1

私はこの同じ問題を抱えており、C:\Program Files\Gitに行き、次にgit-bash.exe - >プロパティ - >互換性 - >右クリックして修正できました。このプログラムを管理者として実行してください。

同僚だけ git repoで同じファイルに変更を書き込むしようとしている私たちの残りの部分のために読んで、彼が設定されるように約束されたファイルの原因となった彼の .bashrcで正しい umask設定を持っていなかったとき、私たちはこの問題に遭遇した
-1
+1

このリンクは質問に答えるかもしれませんが、答えの本質的な部分をここに含めて参考にしてください。リンクされたページが変更された場合、リンクのみの回答は無効になります。 - [レビューの投稿](レビュー/低品質の投稿/ 17870811) –

+1

チップのために大きな感謝。このウェブサイトで私が最初にコメントしたことは、私は学び、改善します。 –

関連する問題