且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Git命令提交所有更改,包括已删除或创建的文件

更新时间:2023-12-04 19:52:10

您可以为该命令创建一个别名,方法是执行

  git config --global alias.commitall'!func(){git add -A&& git commit -am$ 1&& git push origin HEAD; }; func'

然后您可以通过输入

  git commitall一条描述你做了什么的消息


After making changes to files already tracked by git I usually do a:

git commit -a -m "a message describing what you did"

followed by

git push origin master

to commit and then push all changes to my Github account. The first command however does not work for commiting files either added or removed. To do that I would have to first type:

git add -A

as mentioned here: How to commit and push all changes, including deletes?.

In this other question Git commit all files using single command the accepted answer indicates that the only way to apply the full commit (ie: including files added or removed, not only edited) and then the push is by combining them with the && command like so:

git add -A && git commit

which in my case would look like:

git add -A && git commit -a -m "a message describing what you did" && git push origin master

Now for the question(s): is this large command correct? Is there a way to create a new git command to apply these three commands all at once? Furthermore: is this merging of commands recommended or discouraged? If so, please state the reason.


Edit

I immediately regret this decision: Edit last pushed commit's message.

Looks correct to me.

You could create an alias for the command by executing

git config --global alias.commitall '!func(){ git add -A && git commit -am "$1" && git push origin HEAD; }; func'

Then you could commit all changes by entering

git commitall "a message describing what you did"