Git中的rebase以及修改某次提交的方法

对于最新一次提交

直接使用git commit --amend即可覆盖。

对于距今比较久远的(本地)提交记录

如果那次提交到最新提交之间的记录信息都可以丢弃,直接使用git reset hash1>git commit --amend覆盖某次提交即可

如果需要保留中间的提交记录,按以下步骤修改:
1.确保当前工作区没有未提交的代码
2.检出某个需要修改的提交 git checkout hash1
3.修改代码
4.直接使用分离的HEAD做一次覆盖提交git commit --amend(假设哈希是 hash1')
5.检出原有分支git checkout master
6.rebase到第4步覆盖提交的结果上git rebase hash1'

rebase可以从分叉处检测提交记录差异并追加到指定分支,上边第2步hash1之后的所有提交记录都被追加到修改了提交记录的hash1'上。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Add & Commit git init 初始化一个 Git 仓库(repository),即把当前所在目录变成...
    冬絮阅读 10,362评论 0 9
  • 一、基本概念: 注:对于git的分布式概念及其优点,不重复说明,自己百度或谷歌。本文中涉及到指令前面有$的,在cm...
    大厂offer阅读 5,298评论 0 3
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 9,148评论 0 10
  • 简介 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 与常用的版本控制工具 ...
    闽越布衣阅读 7,694评论 0 18
  • git config —global user.name “Nshen” //必须git config —glob...
    困卡阅读 2,900评论 1 9