1. ホーム
  2. git

Git の alias コマンドに引数を渡す

2023-10-06 13:41:33

質問

Git コマンドのエイリアスに引数を渡すことはできますか?

Gitの設定に、このようなエイリアスがあります。

rb1 = rebase -i HEAD~1
rb2 = rebase -i HEAD~2
rb3 = rebase -i HEAD~3
rb4 = rebase -i HEAD~4
....

を作ることは可能でしょうか? rb というエイリアスを作ることは可能でしょうか? git rb <x> はどのような <x> ?

このエイリアスを試してみました。

rb = rebase -i HEAD~

が、例えば git rb 8 は機能しません。

どのように解決するのですか?

もし、あなたが Git Faqセクション "引数付きのGit Aliases" を考慮すれば、それは可能ですが、シェルを通してgitを呼び出すことで可能です。

[alias]
        rb = "!sh -c \"git rebase -i HEAD~$1\" -"

まだテストしていませんが、引数を渡せるのであれば、その方法でいいと思います。

似たような解決策としては シェル関数 :

[alias]
        rb = "!f() { git rebase -i HEAD~$1; }; f"