是否有相当于 git commit -a
对于暂存新文件的命令?
git add -A
就是这种行为,但只有在您从存储库的根目录调用它时才会这样。否则,它只会添加子目录中的文件。
或者是否不存在这样的内置功能,使得编写最简单的程序成为可能,例如 git add -A $(git rev-parse --show-toplevel)
?
是否有相当于 git commit -a
对于暂存新文件的命令?
git add -A
就是这种行为,但只有在您从存储库的根目录调用它时才会这样。否则,它只会添加子目录中的文件。
或者是否不存在这样的内置功能,使得编写最简单的程序成为可能,例如 git add -A $(git rev-parse --show-toplevel)
?
git aa
调用(“aa”代表“add all”):git config --global alias.aa '!sh -c "git add -A $(git rev-parse --show-toplevel)"'
- Christophergit config --global alias.add-a '!git add -A'
就足够了(使用'避免shell解释!)。 - ninjageckogit config --global alias.c '!git add -A && git status && read -p "Press any key to type commit message; press ctrl-C to abort" && git commit'
,这将在[alias]
中生成一个c = "!git add -A && git status && read -p \"Press any key to type commit message; press ctrl-C to abort\" && git commit"
的条目。 - ninjageckogit add -p
。它会打开一个交互式会话,让你添加代码块,而不是整个文件。 - Christophergit status
已经在提交信息中了,所以现在我使用的是!git add -A && git commit
(不过这个命令在某些编辑器中可能没有语法高亮)。(另外,有些 shell 可能无法处理前面例子中的read -p "..."
,这时需要像 Christopher 最初建议的那样使用!bash -c "..."
来处理 bashism。) - ninjagecko