私はこれをしました(-vを使って "self"エイリアスを設定しようとしました)。
git() { if [[ $1 == "commit" ]]; then command git commit -v; else command git "$@"; fi; }
git() { if [[ $1 == "commit" ]]; then command git commit -v; else command git "$@"; fi; }
git() { git commit }; )
git() { git commit; }
git() { git (); }
git() { git(); }
git() { git() }
これですべてのgitコマンドが中断されます。エラーはありませんが、プロンプトは返されません。
gitをアンインストールしてインストールしましたが、役に立ちませんでした。
gitコマンドをデフォルト値にリセットするには?
私はこれを試しましたが、mv .gitconfig .gitconfig_old
役に立ちません。
答え1
あなたは聞く本物混乱してください。
実行するすべての関数定義は次のとおりです。シェル。コマンドラインから直接実行すると、現在実行中のシェル環境にのみ影響します。したがって、端末を閉じて新しい端末を起動すると、定義が失われ、すべてが正常に戻ります。または、unset -f
次に説明するように設定されていない定義を使用できます。コメント。
そのため、gitを再インストールしても問題には影響しません。
名前を変更しても.gitconfig
効果はありません。では変更しませんでしたが、.gitconfig
なぜですか?
お持ちの場合アドバイスに従った前の質問でgitのエイリアスメソッドを使用してエイリアスを設定し、エイリアスを移動すると効果が.gitconfig
あり、エイリアス(および他のすべての設定)が効果的に削除されます。
git
ちなみに、オーバーライドされた基本コマンドとのこれらのすべての混乱は、これらの名前の再マッピングが独自のエイリアスシステムでは許可されない主な理由です。引用するgit-configのマンページ:
「スクリプトの使用に伴う混乱や問題を避けるために、既存のgitコマンドを隠すエイリアスは無視されます。」