自动显示git add后的状态

13

我的通常的 Git 工作流程是

<make changes>
git add FILES
git status
git commit -m "some remarks"

我需要使用git status来检查我是否添加了正确的文件。

有没有办法告诉git在每次git add之后自动显示状态?


你可以创建一个别名,先执行 add,然后再执行 status。例如:git config --global alias.ad "!git add $1; git status",但我不确定你是否能以这种方式继续支持所有的 add 参数。 - poke
4个回答

15

当使用-v(详细)选项运行时,git add会输出已添加的文件的名称:

» git add -v hello?
add 'hello1'
add 'hello2'

13
你可以使用一个别名(alias):alias
[alias]
    gitadd = !sh -c 'git add -- "$@" && git status' --

make changes
$ git gitadd FILES
$ git commit -m "some remarks"

由于git别名是从存储库根目录中开始工作的1,因此您可以修改该别名以使其从任何其他目录中起作用:


[alias]
    gitadd = !sh -c 'cd "$1" && shift && git add -- "$@" && git status' -- 
现在通过说出它的名称来调用它。
git gitadd $PWD file1 file2 ...

1: 请注意,shell 命令将从存储库的顶层目录执行,这可能不是当前目录。


1
“$@” 就是我要找的!谢谢 ^^ - poke
1
在我的看法中,使用该别名会是 git gitadd - mnagel
@devnull 更奇怪的是,当在somedir内部执行git gitadd somedir/somefile时,它可以正常工作。您的解决方案似乎需要相对于存储库根目录的文件名。 - flonk
@devnull 在执行 git add ... 之前,能否告诉别名 cd 返回调用它的位置? - flonk
1
@flonk 想到了一个解决方法。将别名修改为 gitadd = !sh -c 'cd $1 && shift && git add -- "$@" && git status' --,然后通过 git gitadd $PWD file1 file2 ... 来调用它。 - devnull
显示剩余3条评论

3

0

您可以通过使用git config命令创建一个执行add first and then status的别名来完成它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接