git-flow をインストールするとき、実行可能ファイルである /usr/local/bin 主に git-flow にファイルを配置するだけであることに気付きました。実行することでスクリプト git-flow を呼び出すことができますgit flow
(間にダッシュはありません)。次に、git-svn でコマンドを実行する場合も同じであることに気付きましたgit svn
。
私は何か基本的なことを見落としていgit
ますか、それとも実際に何らかの方法でコマンドを委任していますか?
バイナリは、破線のような実行可能ファイルがインストールされgit
ているディレクトリを記憶しています。git-svn
これは、git のインストール中に設定されます。より正確には、ビルド フェーズ中に設定されます (そのため、コンパイルとインストールで同じオプションを使用する必要があります)。
このディレクトリは次の方法で見つけることができますgit --exec-path
$ git --exec-path
/usr/libexec/git-core
(上記は Linux でのシステム インストール用です)。
git svn
コマンド (組み込みではない) は、バイナリgit
を見つけて実行するラッパーを呼び出します。git-svn
注: のような組み込みコマンドに対応する破線の実行可能ファイルの一部は、実行可能ファイルgit-tag
にハードリンクされていgit
ます。それらを呼び出すと、適切な(サブ)コマンドが呼び出されます。