如何使用一个命令来提交所有文件,包括新添加的文件?


当前回答

这是一个shell脚本,它做了一些类似的事情。目前它不提交新添加的文件(添加这个功能应该很容易),但它提交了其他所有内容。此外,它还递归地访问Git子模块。预期的使用场景非常简单

$ git powercommit

其他回答

你可以写一个叫做git-commitall的小脚本(请看Ian Clelland的回答),它使用几个git命令来执行你想做的事情。 把这个脚本放在$PATH的任意位置。你可以通过git commitall来调用它…非常方便!

在这里找到(不幸的是,问题和所有答案都被删除了,只有高声誉的人才能看到)

如果你只是想要一种“快速而肮脏”的方法来保存当前分支上的更改,你可以使用以下别名:

git config --global alias.temp '!git add -A && git commit -m "Temp"'  

运行该命令后,你可以输入git temp,让git自动将你的所有更改提交到当前分支,并将其命名为“temp”。然后,你可以使用git reset HEAD~稍后“取消提交”更改,这样你就可以继续处理它们,或者git commit——amend添加更多的更改到提交和/或给它一个合适的名称。

运行给定的命令

git add . && git commit -m "Changes Committed"

然而,即使它看起来是一个单独的命令,它是两个单独的命令一个接一个地运行。这里我们只用&&来组合它们。这和跑步没什么不同 Git添加。和git分别commit -m "Changes Committed"。您可以同时运行多个命令,但顺序很重要。如果你想把这些变化推送到远程服务器,同时进行分段和提交,你可以这样做,

git add . && git commit -m "Changes Committed" && git push origin master

相反,如果你改变顺序,把推送放在第一位,它将首先执行,并且在登台和提交之后不会给出所需的推送,因为它已经先运行了。

当第一个命令成功返回时,&&在该行上运行第二个命令,或者错误级别为0。与&&相反的是||,它在第一个命令不成功或错误级别为1时运行第二个命令。

或者,你可以创建alize作为git的配置-全局别名。addcommit”!git add -a && git commit -m'并使用它作为git addcommit -m“添加并提交新文件”

我在我的配置中有两个别名:

alias.foo=commit -a -m 'none'
alias.coa=commit -a -m

如果我太懒,我就提交所有的更改

git foo

简单地说一下

git coa "my changes are..."

Coa代表“全部承诺”

运行所有文件(修改、删除和新建)并提交注释的一行程序:

git add --all && git commit -m "comment"

http://git-scm.com/docs/git-add http://git-scm.com/docs/git-commit