2013-04-24 2 views
1

Часто использую git commit --fixup=<commit> и хочу сократить его до git fixup <commit>. Иногда я хочу добавить дополнительные флаги (например, -a). Поэтому у меня есть установка псевдоним, который поддерживает один дополнительный флаг ($2):Как перенаправить дополнительные аргументы в псевдоним Git

[alias] 
    fixup = !sh -c 'git commit -m\"fixup! $1\" \"$2\"' - 

Может ли это быть обобщенно для поддержки произвольного количества флагов?

ответ

1

Я считаю, что то, как это должно работать для вас:

[alias] 
    fixup = "!_() { local commit_id=\"$1\"; shift; git commit -m \"fixup! $commit_id\" \"[email protected]\"; }; _" 

Он использует функцию оболочки и оператор сдвига шелушиться первый аргумент. Затем можно использовать [email protected] для остальных аргументов.

Смежные вопросы