次のコマンドを使用して、リモートブランチからgit pullを実行しようとしました。
$ git pull Origin branch_name
username@private_repository's password:
From ssh://private_repository/path/project
* tag branch_name -> FETCH_HEAD
error: cannot stat 'path/name/of/file': Permission denied
error: cannot stat 'path/name/of/file': Permission denied
しかし、次のエラーが表示されます。
error: cannot stat 'path/name/of/file': Permission denied
error: cannot stat 'path/name/of/file': Permission denied
誰がこれが何を意味するのか知っていますか、私はそれについて何ができますか?
ありがとう
説明は簡単です-gitファイルとリポジトリのパーミッションにセキュリティ上の問題があります。 gitからファイルを取得する権限が必要です。
ディレクトリのアクセス許可がすべての親ディレクトリを含む755(rwxr-xr-x)の場合、誰でもディレクトリの内容を一覧表示できます。
ただし、これはできないため、通常、これは完全なディレクトリパスに755のアクセス許可がないことを意味します。これは、すべての親ディレクトリに+ x権限が必要であることも意味します。
で働く人々のために:
ソリューションを閉じると、このエラーが解決する場合があります。 IDEのgitツールは、まだ問題のファイルを保持している場合があります。
Atomの使用を開始し、問題であることがわかりました。Atomファイルツリーを更新し、gitの問題を解決する必要がありました。
Atomでこの問題が繰り返し発生し、Atomを毎回解決しました。プルの影響を受ける可能性のあるファイルを使用しているアプリケーションをすべて閉じます。
このエラーには別の解決策がありました。私はatom.ioを開発ツールとして使用しています。最新の試用版を破棄したかった(git clean -df
に続いてgit checkout -- .
で)それを行ったとき、Atom内のディレクトリツリーに空のディレクトリがいくつか残っていました。
Git内で代替ブランチをチェックアウトしようとしたときに、これらの空のディレクトリがerror: cannot stat 'path/name/of/directory': Permission denied
を生成していました。イライラする方法。
修正は、ディレクトリツリー内のAtom内のディレクトリをクリックするだけで、すぐに 'poof'が消えます。いったん消えると、gitにエラーはなくなりました。
私は同じ問題を抱えていましたが、私が見つけた方法はrestartプロジェクト(Atom)とgit GUI(SourceTree)に関連するすべてのファイルを閉じるコードエディターでした。その後、ブランチを変更できます。
私の場合、deファイルをブロックしたのはWindows Explorerでした。タスクマネージャーで再起動し(マウスの右クリック、再起動)、問題は解決しました。
私の解像度は上記のほとんどに似ていました。
これは私にはまだ機能しませんでした。私は終わりました:
今回はgit pull
出来た。
また、Angular CLIはファイルをブロックできます。そのため、ng serveの実行を停止してください。
うん、だから私はここに来て、Visual Studioユーザーのための簡単な修正を持っています。
ブランチのチェックアウトを行うが、Visual Studioにフォーカスを設定していない場合、ファイルを一時的にロックします。
VSをクリックしてプロジェクトファイルを再ロードできるようにすると、ここで再びプルできるようになります...ここでユーザーエラー
Git環境が正しく設定されていません。
リポジトリはユーザーgitが所有する必要があります。したがって、ユーザーgitは公開鍵を受け入れる必要があります。
ここで作業しているバックエンドがわからないため、キーを追加する方法は異なります。