Can I pass arguments to the alias of a Git command?
I have some alias in Git config, like so:
rb1 = rebase -i HEAD~1
rb2 = rebase -i HEAD~2
rb3 = rebase -i HEAD~3
rb4 = rebase -i HEAD~4
....
Is it possible to make an rb
alias so that git rb <x>
works for any <x>
?
I tried this alias:
rb = rebase -i HEAD~
but then for instance git rb 8
does not work.
If you consider the Git Faq section "Git Aliases with argument", you could do it, but by calling git through a shell:
[alias]
rb = "!sh -c \"git rebase -i HEAD~$1\" -"
I haven't tested it yet, but if you can pass an argument, that would be the way to do it.
A similar solution would be to use a shell function:
[alias]
rb = "!f() { git rebase -i HEAD~$1; }; f"