我知道可以使用&&
(和)语句为同一别名运行多个命令。但是,对于较长的组合,它将失去可读性。例如:
save = !git status && git add -A && git commit -m \"$1\" && git push --force && git log && :
而且我想知道是否有多行书写方式?也许用{}
拥抱它。
我不会在配置文件中写入如此广泛的别名。您还可以通过将名为add new commands的可执行文件添加到git-newcommand
来PATH
。只要它是可执行文件,并且可以使用前缀“ git-”命名,则可以是Bash脚本,Python脚本甚至是二进制文件。
如果使用脚本,则必须添加适当的Hashbang:
#!/usr/bin/env python
例如在您的家中导出PATH
:
export PATH="${PATH}:${HOME}/bin"
这更加模块化,可移植且易于调试。
嗯,显然不可能。因此,我发现提高git别名可读性的最佳选择是使用反斜杠字符(\
)来换行。
[alias]
save = !git status \
&& git add -A \
&& git commit -m \"$1\" \
&& git push -f \
&& git log -1 \
&& : # Used to distingue last command from arguments
其他方法是使用函数,但是仍然需要反斜杠。
[alias]
save = "!f() { \
git status; \
git add -A; \
git commit -m "$1"; \
git push -f; \
git log -1; \
}; \
f; \
unset f"