Amend Last Commit选项使用注意点

1.创建master分支并上传到remote分支

create 2 folders and 4 files

2.修改folder1/file1.java,commit并push。

3.修改folder1/file2.java,使用Amend Last Commit选项,先commit。

4.push,失败。

失败的原因是本地的当前分支的最前端提交(tip)在它对应的远程分支的后面(也就是本地分支的内容旧了)。
解决办法是在push之前把远程分支的内容与本地分支的进行合并(e.g. pull一下)。

5.pull远程分支

6.push到远程分支

分析:

整个过程中只有自己一个用户push了两次,为什么还会出现我的本地分支版本落后于远程分支呢?

原因在于第二次commit的时候使用了Amend Last Commit选项,由于使用了这个选项commit之后导致本地分支和远程分支的不一致。

所以应该将这个选项应用于没有push到远程分支的commit上面去。这些没有push过的commit在本地分支和远程分支一致点之后,所以不影响。

时间: 2024-12-09 15:43:56

Amend Last Commit选项使用注意点的相关文章

三十五、git commit简介

翻译整理自: http://web.mit.edu/~mkgray/project/silk/root/afs/sipb/project/git/git-doc/git-commit.html 在用git来进行版本控制时,我需要执行git commit命令,将索引内容添加到仓库中. 示例1: git commit  -m "提交的描述信息" 如果我们这里不用-m参数的话,git将调到一个文本编译器(通常是vim)来让你输入提交的描述信息 可能一天下来,你对工作树中的许多文档都进行了更新

git 修改最后一次提交的用户名 或者 commit的内容

修改git最后一次提交的命令 $ git commit --amend 修改git最后一次提交用户名的相关命令 git config user.name 'wangz' git config user.email 'wangz@alib.com' git commit --amend --author=wangz 修改最后一次提交内容的相关文档 $ git commit --amend --help usage: git commit [options] [--] <pathspec>...

如何修改Git commit的信息

原文地址: http://xiguada.org/change-git-commit-message Git cimmit信息push后,如何修改,amend可以修改最后一次commit信息,但对于历史提交信息,需要使用rebase命令. 1 比如要修改的commit是倒数第三条,使用下述命令: git rebase -i HEAD~3 2 把pick改为edit 3 然后 :wq 出现如下信息: 4 执行 git commit --amend 修改commit信息 5 退出保存 :wq 6 执

记一次git amend事故处理方案

一.问题回顾 问题是git commit --amend 引起的. 一条commit已经push到远端develop了,但是后来又在这条commit上进行了amend操作,导致这条commit的哈希码发生了变化.并且后续又在这条commit之后进行了N条commit操作. <Begin> 大概的情况画了个简图,如图所示.下面的绿色就是最后相同的地方,红色的那条做的是相同的功能message是一样的,但是提完develop之后又改动了很多然后使用amend挤压了. 这个时候比较头疼了,因为那条a

git commit命令

git commit 主要是将暂存区里的改动提交到本地的版本库.每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id. commit-id在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里. 1. git commit -m "message" -m 参数表示可以直接输入后面的message,如果不加 -m 参数,那么是不能直接输入message的,而是会调用一个编辑器

docker commit为什么不适合生成镜像?

要知道,当我们运行一个容器的时候(如果不使用卷的话),我们做的任何文件修改都会被记录与容器存储层里.而Docker提供了一个docker commit 的命令,可以将容器的存储层保存下来成为镜像.换句话说,就是在原有镜像的基础上,在叠加上容器的存储层,并构成信的镜像,以后我们运行这个新镜像的时候,就会拥有原有容器最后的文件变化. docker commit的语法格式为: docker commit[选项] [[:]] 但是,慎用docker commit 使用docker commit命令虽然可

厉害了!小猪用Git一年多后总结的精华

厉害了!小猪用Git一年多后总结的精华 描述性文字: 不要问我为什么用这种骚猪风格的标题,现在写博文,标题不骚,人家都不乐意看~ 接触Git到现在有一年多了,对Git使用也是日渐精进,虽说不上很熟络,但也算 入门,决定年前总结下,所以有了此文.Git博大精深,还有很多的东西需要学习, 比如自己搭建啊,一些便利工具的使用啊,一些疑难杂症解决方案啊等等,当然 这就是下一话的事了.本文讲述的是Git基础的一些东西,没有Git大法那个系列 那么通熟易懂,但是还是对关键性的知识点进行了浅析,相信看完本文你

github linux 命令行操作实例

继续整理一下linux 下面使用命令行操作实例 首先创建文件目录 然后 执行 git clone 操作 [email protected]:~/桌面$ cd test/ [email protected]:~/桌面/test$ git clone https://github.com/timelessz/TESTDEMO.git正克隆到 'TESTDEMO'...remote: Counting objects: 3, done.remote: Total 3 (delta 0), reused

Git常用命令清单

配置 首先是配置帐号信息ssh -T [email protected] #登陆github 修改项目中的个人信息 $ git config --global user.name "wirelessqa"$ git config --global user.email [email protected] config git config --global user.name JSLite #设置提交用户名git config --global user.email [email pr