• 有关git commit --amend的用法及若干个问题


    如题,其实这篇博文本不想写,因为网上随便一搜,一大片都是关于git commit --amend的用法,但是我还是决定写了,因为我在网上没找到我想要的答案,然后盲目之下,我还产生了严重失误!
    所以还想着写下来,希望可以帮到你,避免跟我一样的错误。

    我相信大家在使用git时,难免会因为兴奋轻易的就进行提交,并push到远端去了。但是有可能你这次commit的文件有个小问题(比如你忘记删除一个无用的注释)。如果你删除注释后,在进行一次提交的话,远端就会看到你的提交记录。不仅提交次数变多了,而且看起来不美丽。
    这时候你就需要git commit --amend命令了,该命令可以认为就是修改你最近的一次提交,使用完该命令后,再进行push,远端只能看到这是一次完美的提交,不会有任何痕迹。

    首先在终端输入:git commit --amend,此时你会进入一个文件的编辑中,这个文件其实就是你提交时的说明,如下图所示:
    在这里插入图片描述
    此时你更改这个文件里面的信息,就是在更改你上次提交时的说明信息;
    想要更改说明信息就更改,然后直接:wq就可以保存并退出了,这个时候你就能看到提交的反馈,然后直接push,到远端查看,会发现一个干净的commit。

    好,有的同学可能会问了,我只看到修改说明信息的地方,你为啥不告诉我,我怎么修改此次的提交的文件呢?这就是关键点,很多博文都不说这个点,我不知道是他们太牛叉,还是他们没考虑这个或者没这个需求?
    反正我的需求就是更改提交的文件的内容。注意,如果你想要让你更改后的文件,提交到远端去,一定要把文件更改完之后,add到暂存区,之后再进行git commit --amend
    所以修改最近一次提交的文件或说明的流程如下:

    git add *.py
    git commit --amend
    ---------------------------
    这里是关于最近一次提交的说明文件,如果想要更改最进行一次提交的说明,
    键入 i 即可编辑,然后esc退出,:wq,退出该文件并保存
    -----------------------
    git push
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    这里可能有同学又要问了,我能不能git commit --amend某些文件啊,我咋没看到你要提交的文件名参数在哪呀?瑷~这就是我遇到的严重失误,我进行了这些操作之后,到远端,我发现我提交了一大批文件上去了,根本不是我想要的仅修改本次commit中提交的文件,这是咋回事儿呢?
    这或许跟我的一个git习惯有关,我一般喜欢直接git add .,然后我再分门别类commit其中部分文件。我的那个问题的就是因为在我git commit --amend时,我add了很多不必要或者说不是此次提交相关的文件。

    git commit --amend是直接将你暂存区里面的所有文件,作为你最近的一次提交的修改!!!
    所以在各位使用该命令修改最近提交的文件内容时,一定要注意这个点!!!!

  • 相关阅读:
    4.力扣c++刷题-->删除有序数组中的重复项 II
    linux批量修改多个文件的同一部分内容
    JVM调优之排查进程CPU占用过高
    绿肥红瘦专栏数据的爬取
    【2d游戏开发】unity实现UI框架搭建
    从零实现ORM框架GeoORM-对象表结构映射-02
    ActiveMQ、RabbitMQ、RocketMQ、Kafka四种消息中间件分析介绍
    Java 中的 Iterator 迭代器详解
    VMware16安装RedHat7.6步骤
    C语言-流程控制
  • 原文地址:https://blog.csdn.net/yiyexy/article/details/126125892