我想为git创建一个别名,以便在一个命令中结帐前实现提交。有可能吗?
尝试了这个,但失败了:
git config alias.changebranch 'commit -a --allow-empty-message -m "" checkout'
此命令的响应:
$ git changebranch hello
fatal : paths with -a does not make sense
答案 0 :(得分:3)
这不是执行两个命令的别名,它只是执行一个命令的别名,“checkout”是该命令的最后一个参数。
你想要这样的东西:
Method
git config alias.changebranch '!git commit -a --allow-empty-message -m "" && git checkout'
表示别名由shell运行,不仅仅被视为git命令,只有在提交成功时才会运行checkout。
答案 1 :(得分:-1)
基本上你只需要在〜/ .gitconfig
中添加一行[alias]
st = status
ci = commit -v
或者您可以使用git config alias命令:
$ git config --global alias.st status
在unix上,如果别名有空格,请使用单引号:
$ git config --global alias.ci 'commit -v'
在Windows上,如果别名有空格或命令行参数,请使用双引号:
c:\dev> git config --global alias.ci "commit -v"
alias命令甚至接受函数作为参数。看看别名 - > https://git.wiki.kernel.org/index.php/Aliases#Aliases