1. ホーム
  2. git

[解決済み] Git Checkout の警告: ファイルをリンク解除できません。

2022-07-26 15:57:06

質問

gitについて、「unable to unlink」警告に関連する同様の問題があることは承知していますが、使用することができません。

主な違いは、私がサブモジュールを一切扱っていないときに起こったということです (これまで一度も扱ったことはありません)。 私は 'upgrade' というブランチを作成し、古いフレームワークのファイルを削除し、新しいものをコピーしました。 git add -A を使って、すべてをコミットしました。 trunkブランチをチェックアウトしようとすると、次のようなエラーが表示されました。

warning: unable to unlink requirements/views/sk/index.php: Permission denied
warning: unable to unlink requirements/views/sv/index.php: Permission denied
warning: unable to unlink requirements/views/zh/index.php: Permission denied
warning: unable to unlink requirements/views/zh_cn/index.php: Permission denied
warning: unable to unlink requirements/views/zh_tw/index.php: Permission denied

...などなど。 何百もあります。

最初は、これは単にパーミッションの問題だと思ったので、要件ディレクトリ全体に再帰的にグループ書き込み権限を追加しましたが、変化はありませんでした。

編集: 下の回答で提案されたように、私は同じことをしようとしましたが、他のすべてを閉じた状態で試みました。 私は以前より運がありませんでした。

この問題は、通常の開発に戻るために trunk に移動することができないので、特に衰弱しています。

どのように解決するのですか?

私は通常、これらのファイルのハンドルを解放していないプロセスがあるときに、この種のエラーを見ます。

何も実行されていないことを確認し、チェックアウトを再試行してください。

注意: Git のインストール方法と関係している可能性もあります (Windows では、msysgit が にインストールされていると UAC で問題が発生することがあります)。 C:\Program または C:\Program Files は、"を参照してください。 msysgit - sh.exe - fork: パーミッションが拒否されました - Vista 64 bit 437号のコメント2 )

のように のように、この問題の他の一般的な原因は、ディレクトリの権利の問題(間違った所有者)であり、必ずしもリンク解除できないファイルに関するものではありません。