0

git-flow をインストールするとき、実行可能ファイルである /usr/local/bin 主に git-flow にファイルを配置するだけであることに気付きました。実行することでスクリプト git-flow を呼び出すことができますgit flow(間にダッシュはありません)。次に、git-svn でコマンドを実行する場合も同じであることに気付きましたgit svn

私は何か基本的なことを見落としていgitますか、それとも実際に何らかの方法でコマンドを委任していますか?

4

1 に答える 1

1

バイナリは、破線のような実行可能ファイルがインストールされgitているディレクトリを記憶しています。git-svnこれは、git のインストール中に設定されます。より正確には、ビルド フェーズ中に設定されます (そのため、コンパイルとインストールで同じオプションを使用する必要があります)。

このディレクトリは次の方法で見つけることができますgit --exec-path

$ git --exec-path
/usr/libexec/git-core

(上記は Linux でのシステム インストール用です)。


git svnコマンド (組み込みではない) は、バイナリgitを見つけて実行するラッパーを呼び出します。git-svn

注: のような組み込みコマンドに対応する破線の実行可能ファイルの一部は、実行可能ファイルgit-tagにハードリンクされていgitます。それらを呼び出すと、適切な(サブ)コマンドが呼び出されます。

于 2013-10-13T17:47:10.833 に答える