是否可以创建别名提交+;签出git?

是否可以创建别名提交+;签出git?,git,Git,我想为git创建一个别名,以便在一个命令中实现签出之前的提交。可能吗 T尝试此操作但失败: git config alias.changebranch 'commit -a --allow-empty-message -m "" checkout' 此命令的响应: $ git changebranch hello fatal : paths with -a does not make sense $ git config --global alias.st status 这不是执行两个命

我想为git创建一个别名,以便在一个命令中实现签出之前的提交。可能吗

T尝试此操作但失败:

git config alias.changebranch 'commit -a --allow-empty-message -m "" checkout'
此命令的响应:

$ git changebranch hello
fatal : paths with -a does not make sense
$ git config --global alias.st status 

这不是执行两个命令的别名,它只是执行一个命令的别名,该命令的最后一个参数是“checkout”

你想要的是:

git config alias.changebranch '!git commit -a --allow-empty-message -m ""  && git checkout' 

表示别名由shell运行,而不仅仅被视为git命令,并且只有在提交成功时才会运行签出。

这不是执行两个命令的别名,它只是执行一个命令的别名,该命令的最后一个参数是“checkout”

你想要的是:

git config alias.changebranch '!git commit -a --allow-empty-message -m ""  && git checkout' 

意味着别名由shell运行,而不仅仅被视为git命令,并且只有在提交成功时才会运行签出。

基本上,您只需要在~/.gitconfig中添加行即可

[alias]
    st = status
    ci = commit -v
或者可以使用git config alias命令:

$ git changebranch hello
fatal : paths with -a does not make sense
$ 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命令甚至接受函数作为参数。看看别名->

基本上,您只需要在~/.gitconfig中添加行即可

[alias]
    st = status
    ci = commit -v
或者可以使用git config alias命令:

$ git changebranch hello
fatal : paths with -a does not make sense
$ 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命令甚至接受函数作为参数。查看别名->