Git はリポジトリ外部を指すシンボリック リンクを認識しないことを考えると、ハード リンクの使用に問題はありますか?
Git がそれらを壊す可能性がありますか? 詳細な情報を教えていただけますか?
ベストアンサー1
Gitのディレクトリを表す「ツリー」オブジェクトは、ファイル名と(そのサブセットの)権限を格納します。inode番号(または他の種類のファイルID)は格納しません。したがって、ハードリンク gitでは表現できない少なくとも、サードパーティのツールがなければ、メタストアまたはgit キャッシュ メタ(そして、それらのツールを使ってもそれが可能かどうかはわかりません)。
Git は更新する必要のないファイルには触れないようにしますが、Git はハードリンクを保持しようとしないため、Git によってハードリンクが壊れる可能性があることを考慮する必要があります。
についてリポジトリ外部を指すシンボリックリンク: git はそれらに問題がなく、シンボリックリンクの内容を保持するはずです...しかし、そのようなリンクの有用性は私にとっては疑わしいです。なぜなら、それらのシンボリックリンクが壊れるかどうかはファイルシステムのレイアウトに依存するからです。外git リポジトリであり、git の制御下にはありません。