hub alias
は--noop
を考慮していないようであるため、 https://github.com/visionmedia/git-extrasからgit-alias
を非表示にします。
これはハブ固有のコマンドであり、セットアップ時にのみ役立つため、次のいずれかを提案します。
--noop
認識させるhub [--alias|--shell-alias] [SHELL]
$0
が明示的にhub
場合にのみ機能するようにしますあなたが言っていることを理解するのに少し時間がかかりました。 基本的に、 hub alias
は、システムに存在する可能性のある他のgit-alias
コマンドをシャドウイングします(この場合、1つはgit-extrasによって提供されます)。
私はしかし、あなたの提案3の賛成よ、この動作は呼び出し、なぜなら他のすべての場合には、いくつかに驚かれるかもしれないhub <something>
と同一である必要がありますgit <something>
( hub
git
としてエイリアスされます)。 私はそれについて考える必要があります。
ヘッドアップをありがとう!
はっきりしなかったらごめんなさい。 あなたは私を正しく理解しました。
hub alias-command
ようなものも同様に機能し、もう少し明確になりますか?
または同様の何か...
まず第一に、 --noop
はすべてのコマンドをgit
転送するわけではありません。 hub
によって何が実行されるかを示しているだけで、実行されていません。
hub alias
、コマンドがgit
ではなくhub
として呼び出された場合にのみ機能させるというアイデアが好きです。 ただし、これを技術的に行う方法がわかりません。 $0
の値は、 git
エイリアスを介して呼び出したかどうかに関係なく、私にとってはhub
です。
次のオプションは、 hub --alias
などのカスタムフラグにすることです。 ただし、これにより、 eval "$(hub alias -s)"
がシェルであることがすでに埋め込まれているユーザーとの下位互換性が失われます。
@cdlm @mislavハブにgitエイリアスを設定した場合、ハブはgit-extrasエイリアスを役に立たなくしますか? ここに記載されている素晴らしいgit-extrasエイリアスを使用できませんhttps://github.com/tj/git-extras/blob/master/Commands.md ?
hub alias
とhub fork
が優先されるため、そのリポジトリのgit alias
とgit fork
を除くすべてのgit-extrasコマンドを使用できます。
代わりにgit-alias
とgit-fork
使用するか、 git
エイリアスを\
(円記号)でバイパスすることができます: \git alias
。 私はgoの専門家ではありませんが、いじり回しており、go実行可能ファイルをどのように実行しても、 os.Args[0]
常に実行可能ファイルの本当の名前であるhub
を@として与えます
hub alias
の場合、おそらく-s
が渡されてhub alias
を実行するという事実を使用できます。それ以外の場合は、非推奨通知を印刷するか、 git
転送します。コマンド。
シェルからhub
完全にスキップしたい場合は、 command git ...
実行するだけです。 例: command git alias
。
はい、それはバックスラッシュ\
を使用するのと同じ効果があります、_e.g._ \git
最も参考になるコメント
シェルから
hub
完全にスキップしたい場合は、command git ...
実行するだけです。 例:command git alias
。