我的通常的 Git 工作流程是
<make changes>
git add FILES
git status
git commit -m "some remarks"
我需要使用git status
来检查我是否添加了正确的文件。
有没有办法告诉git
在每次git add
之后自动显示状态?
我的通常的 Git 工作流程是
<make changes>
git add FILES
git status
git commit -m "some remarks"
我需要使用git status
来检查我是否添加了正确的文件。
有没有办法告诉git
在每次git add
之后自动显示状态?
当使用-v
(详细)选项运行时,git add
会输出已添加的文件的名称:
» git add -v hello?
add 'hello1'
add 'hello2'
[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 命令将从存储库的顶层目录执行,这可能不是当前目录。
git gitadd
。 - mnagelsomedir
内部执行git gitadd somedir/somefile
时,它可以正常工作。您的解决方案似乎需要相对于存储库根目录的文件名。 - flonkgit add ...
之前,能否告诉别名 cd
返回调用它的位置? - flonkgitadd = !sh -c 'cd $1 && shift && git add -- "$@" && git status' --
,然后通过 git gitadd $PWD file1 file2 ...
来调用它。 - devnull以下是我使用https://dev59.com/YV8d5IYBdhLWcg3w8WJt#26243454的答案并结合devnull的答案得出的结果:
[alias]
sadd = !sh -c 'cd -- ${GIT_PREFIX:-.} && git add -- "$@" && git status' --
您可以通过使用git config
命令创建一个执行add first and then status
的别名来完成它。
add
,然后再执行status
。例如:git config --global alias.ad "!git add $1; git status"
,但我不确定你是否能以这种方式继续支持所有的add
参数。 - poke