是否存在`git add . && git commit --amend`对应的Git简写命令?
Git 追加提交简写方案
Git 本身没有内置对应 git add . && git commit --amend 的原生简写命令,你可以通过以下两种方式实现快速操作:
1. 组合使用现有内置参数
如果你只需要将已跟踪文件的修改、删除追加到上一次提交,不需要新增未被跟踪的文件,可以直接使用:
git commit -a --amend
该命令等价于 git add -u && git commit --amend,和你已知的 git commit -a 逻辑一致,仅处理已跟踪文件的改动。
2. 自定义 Git 别名实现全场景快速操作
如果你需要包含新增未跟踪文件的场景,或者想简化命令长度,可以自定义 Git 别名,一次配置永久生效:
- 若要实现
git add . && git commit --amend效果(包含新增未跟踪文件),执行以下配置命令:git config --global alias.amend-all '!git add . && git commit --amend'
配置完成后,只需执行git amend-all即可完成对应操作。 - 若要实现
git add -u && git commit --amend效果(仅处理已跟踪文件),可以配置更短的别名:git config --global alias.amend 'commit -a --amend'
配置完成后,只需执行git amend即可完成对应操作。
注意:使用
--amend参数会修改上一次提交的哈希值,如果上一次提交已经推送到远程仓库,修改后推送需要追加--force参数,请确认没有其他协作人员基于该旧提交开发后再操作,避免产生代码冲突。
内容的提问来源于stack exchange,提问作者Fangzhen Song
相关产品推荐
相关产品推荐

