当前位置: 首页 > news >正文

git压缩/合并多次commit提交为1次commit提交

git压缩/合并N次commit提交为1次commit提交

 

假设有最近3次提交:

commit_id1
commit_id2
commit_id3

目标是把以上3次commit合并成1个commit,注意,最新的commit提交在最上面。

 

在git bash里面的操作步骤:

(1)git rebase命令:

git rebase -i HEAD~3

 

(2)在弹出的窗口中把 pick 改为 s (即squash )。

这一步,会弹出一个窗口,键盘输入 i ,然后把第2个和第3个 pick 改为 s,最终形如:

pick commit_id1   '注释*'s commit_id2   '注释*'s commit_id3   '注释*'

 

(3)然后按 Ctrl+C ,输入 :wq 退出。

 

(4)此时,变成常规的git提交过程了,

git add . 
git rebase --continue

 

(5)git push到你的远程仓库即可。

 

注意,如果中途有冲突需要解冲突,如果有异常无法合并,可以:

git rebase --abort  

放弃此次操作。

 

查看历史commit提交记录:

git log

 

 

 

 

git切换分支代码到某一次commit提交_zhangphil的博客-CSDN博客git命令:git reset --hard commit-id可以通过git log输出查找。git reset撤销当前分支所有修改,恢复到最近一次修改前干净的分支情况,首先:git reset --hard接着:git clean -fd。git reset撤销当前分支所有修改,恢复到最近一次修改前干净的分支情况_zhangphil的博客-CSDN博客。git回退代码仓库版本_git回退到之前的版本会影响本地代码嘛_zhangphil的博客-CSDN博客。https://blog.csdn.net/zhangphil/article/details/132326842git基于change代码修改与提交_zhangphil的博客-CSDN博客git cherry-pick:复制多个提交commit到当前分支git cherry-pick的作用是合并不同分支的若干个commit到当前分支,这些若干个commit代码提交可以是不同分支的commit提交,如图:现在master分支打算把develop分支的C、D、E这三次提交复制到当前mater分支,那么首先需要从develop切换到分支到master:git checko...git cherry-pick解冲突push到远程代码仓库。某种意义上讲,change相当于git的分支。https://blog.csdn.net/zhangphil/article/details/132121739git查看commit提交的历史记录_git查看本地commit记录_zhangphil的博客-CSDN博客git查看commit提交的历史记录%格式化占位符代表的意义:%h,某次提交的哈希值简写。%H,某次提交的完整哈希值。%an,作者名字。%cr,提交距离现在有多久时间。%cn,提交者名字。(与%an不同,提交者只是提交了代码,但可能不是作者)%cd,提交的日期。%s,提交的信息。......_git查看本地commit记录https://blog.csdn.net/zhangphil/article/details/125553909git cherry-pick:复制多个提交commit到当前分支_zhangphil的博客-CSDN博客git cherry-pick:复制多个提交commit到当前分支git cherry-pick的作用是合并不同分支的若干个commit到当前分支,这些若干个commit代码提交可以是不同分支的commit提交,如图:现在master分支打算把develop分支的C、D、E这三次提交复制到当前mater分支,那么首先需要从develop切换到分支到master:git checko...https://blog.csdn.net/zhangphil/article/details/83787145git当前本地已commit但未push到远程的提交,并选择其中一个commit推送至远程_git查看本地提交没有push的代码_zhangphil的博客-CSDN博客git cherry-pick:复制多个提交commit到当前分支git cherry-pick的作用是合并不同分支的若干个commit到当前分支,这些若干个commit代码提交可以是不同分支的commit提交,如图:现在master分支打算把develop分支的C、D、E这三次提交复制到当前mater分支,那么首先需要从develop切换到分支到master:git checko...git当前本地已commit但未push到远程的提交,并选择其中一个commit推送至远程。_git查看本地提交没有push的代码https://blog.csdn.net/zhangphil/article/details/129589462git删除/撤销远已经push到程服务器上某次代码提交_git怎么删除某次代码的提交_zhangphil的博客-CSDN博客git删除/撤销远已经push到程服务器上某次代码提交场景:不小心把一次错误的代码push到远程服务器上的分支上,需要立即删除/撤销这次代码提交。具体方法,git命令:git reset --hard git push origin HEAD --forcecommit_id可以通过git命令:git log输出获取。commit_id形如:126f206185f225879f2723ca421_git怎么删除某次代码的提交https://blog.csdn.net/zhangphil/article/details/79670257git拉取远程所有分支/添加远程仓库_zhangphil的博客-CSDN博客git拉取远程所有分支/添加远程仓库。_拉取远程所有分支https://blog.csdn.net/zhangphil/article/details/129189980

 

http://www.lryc.cn/news/132236.html

相关文章:

  • 【3519DV500】AI算法承载硬件平台_2.5T算力+AI ISP图像处理_超感光视频硬件方案开发
  • Linux系统基础服务启动的方法
  • STM32 FLASH 读写数据
  • excel功能区(ribbonx)编程笔记--1 初识功能区
  • 电脑远程接入软件可以进行文件传输吗?快解析内网穿透
  • react-native-webview使用postMessage后H5不能监听问题(iOS和安卓的兼容问题)
  • 通过LD_PRELOAD绕过disable_functions
  • Python批量爬虫下载文件——把Excel中的超链接快速变成网址
  • Crimson:高性能,高扩展的新一代 Ceph OSD
  • 【websocket】websocket-client 与 websockets
  • Qt快速学习(一)--对象,信号和槽
  • Qt6之如何为QDialog添加最大化和最小化按钮
  • 攻防世界-warmup
  • 02__models
  • MyBatis入门配置及CURD实现
  • 《游戏编程模式》学习笔记(五)原型模式 Prototype Pattern
  • ansible案列之LNMP分布式剧本
  • React2023电商项目实战 - 1.项目搭建
  • 数据库连接池(c3p0和德鲁伊)
  • ARM--day6(实现字符、字符串收发的代码和现象,分析RCC、GPIO、UART章节)
  • 2023牛客暑期多校训练营9 B.Semi-Puzzle: Brain Storm
  • mysql中的窗口函数
  • 【双指针】经典数组双指针题LeetCode
  • 极智嘉x吉利汽车 x京东物流,引领汽车行业智慧物流新变革!
  • RK3588平台开发系列讲解(AI 篇)RKNN C API 详细说明
  • 【基础】Android Handler
  • c语言实现MD5算法
  • Apache Doris 2.0.0 特性分析
  • 如何做H5性能测试?
  • 【Docker】Docker Desktop配置资源:cpu、内存等(windows环境下)