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


当前回答

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

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

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

其他回答

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

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

我认为这是展示和提交所有更改的最优雅的方式:

git commit -am  "message"

我使用这个函数:

gcaa() { git add --all && git commit -m "$*" }

在我的zsh配置文件,所以我可以做:

> gcaa This is the commit message

自动执行并提交所有文件。

Does

git add -A && git commit -m "Your Message"

算作“单一命令”?

根据下面@thefinnomenon的回答进行编辑

要将它作为git别名,请使用:

git config --global alias.coa "!git add -A && git commit -m"

并提交所有文件,包括新文件,用一个消息:

git coa "A bunch of horrible changes"

解释

从git添加文档:

-A, -所有,-no-ignore-removal 不仅在工作树中有文件匹配的地方更新索引,而且在索引已经有文件匹配的地方更新索引 条目。属性的添加、修改和删除索引项 工作树。 如果使用-A选项时没有给出<pathspec>,则 更新整个工作树(旧版本的Git用于限制 更新到当前目录及其子目录)。

很棒的答案,但如果你寻找一行做所有,你可以连接,别名和享受的便利:

Git add * && Git commit -am "<提交消息>"

它是一个单行,但有两个命令,如前所述,你可以别名这些命令:

别名git-aac="git add * && git commit -am "(末尾的空格很重要),因为你要参数化新的短手命令。

从现在起,你要用这个别名

Git-acc "<提交消息>"

你基本上会说:

Git,为我添加所有未跟踪的文件,并使用这个给定的提交消息提交它们。

希望你使用Linux,希望这对你有帮助。