用于组合多个命令的Git别名:git checkout和git status

时间:2014-06-25 14:30:43

标签: git git-config git-alias

我发现每次签出本地分支时,我都会执行git状态。我想在我的别名中添​​加一个git状态,以便提高效率。

我已经有以下简单的结帐别名:

alias.co=checkout

我想修改它,以便无论我提供给git co'它将始终执行:

git co && git st

因此,例如,我可以执行以下任何操作,并且别名应该在之后执行git状态:

git co -b newbranch
git co anotherbranch
git co -b andanother --track newbranch
git co -- "*.c"

2 个答案:

答案 0 :(得分:4)

要在别名中运行多个Git命令,您需要修改别名以使用运行shell命令的!,例如:

[alias]
    co = "!git checkout \"$@\" && git status"

$@应将任何参数传播到git cogit checkout

答案 1 :(得分:1)

你可能最好为这样的事情写一个bash脚本。类似的东西:

#!/bin/bash

if [[ $# == 0]]
then
    echo 'No branch name'
    exit 1
fi
git checkout "$*"
git status

然后,无论您将该文件保存为命令名称,然后第一个命令将是分支的名称。