命令行--git--多次commit如何合并成一个commit

这篇具有很好参考价值的文章主要介绍了命令行--git--多次commit如何合并成一个commit。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考:https://blog.csdn.net/qq_50652600/article/details/120800309
在我们平时开发中,我们提交代码免不了要和git打交道,那么我们肯定是先从预发分支上(公司一般都用pre命名,这里为了方便演示用master)上拉去最新的代码,然后自己在上面在切一个自己的功能分支(gongeng)进行开发。

    但是如果我们一个功能模块开发完了之后,肯定提交了许多次,如果我们想把这么多提交记录都merge到我们的master分支上,肯定是不友好和不雅观的。所以我们需要将我们许多次的提交记录合成一次的提交记录,在合并到我们的pre分支上。(多说一句:一般自己的功能分支上开发完成之后,肯定是先合并到测试分支上先测试通过的,然后再将功能分支的代码合并到预发分支,这里为了方便,省去了测试分支)

如果觉得命令行操作繁琐,不想用命令行操作,可以用idea图形化工具操作:idea–git–如何将多次commit合成一个点
1 进入仓库 查看commit (命令:git log)
命令行--git--多次commit如何合并成一个commit
由此我们可以看见我在自己的功能分支上提交了3次记录分别按照时间倒序排列

2 使用rebase命令进行变基(命令:git rebase -i HEAD~3)
命令行--git--多次commit如何合并成一个commit
pick:保留该commit

squash:将该commit和前一个commit合并

故如果我们想要将此3次提价合并成一个提交,需要将commit2和commit3的pick改成squnsh(缩写“s”)也可。如下图:
命令行--git--多次commit如何合并成一个commit
提示:按“i”键即可进入vim编辑模式进行修改,修改完成之后,按“esc”键进行退出,再次按“:”进入底线命令模式,输入“wq”进行保存后会自动出现commit message信息界面。此时我们可以根据情况保留或者删除多余注释
命令行--git--多次commit如何合并成一个commit
完成之后我们继续保存退出(可按照之前的提示操作)
命令行--git--多次commit如何合并成一个commit
3 再次查看记录(命令:git log)
命令行--git--多次commit如何合并成一个commit
4 强制推送到远程(命令:git push -f)

提示:由于我是自己新建的分支,没有与远端建立连接 所以需要执行git push -f --set-upstream origin gongneng 命令,大家在公司开始只需执行git push -f命令即可

命令行--git--多次commit如何合并成一个commit
现在我们在自己的功能分支上已经将多个点压成了一个点(多个分支合成一个分支),现在只需将这一个点cherry-pick到我们的预发分支即可。文章来源地址https://www.toymoban.com/news/detail-510941.html

到了这里,关于命令行--git--多次commit如何合并成一个commit的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git 合并多次提交记录(commit)

    在开发过程中,对于一个完整的功能可能会先后进行多次提交。这种及提交方式不利于与代码走查时或者后期回顾功能点影响范围。为此,应该将多次提交合并为一次提交。 例如当前提交如下: 若我想合并前3次提交即从91bfbb8f599fa0129f28f9c4fd85e9feeca335be到7dbba7b7b46aa47bb57d109cd6

    2024年02月05日
    浏览(55)
  • 使用git rebase合并多次commit

    可以对某一段线性提交历史进行编辑、删除、复制、粘贴;因此,合理使用rebase命令可以使我们的提交历史干净、简洁! 但是需要注意的是: 不要通过rebase对任何已经提交到公共仓库中的commit进行修改(你自己一个人玩的分支除外) 基本格式如下 其中-i的意思是–interacti

    2024年02月09日
    浏览(53)
  • git命令合并某一个分支的某个commit到目标分支

    1. 应用场景 在A分支上提交了一个commit,B分支也需要提交这个commit代码,避免人工复制代码,可以使用git命令行操作。 2. 基本用法(实例讲解) 比如,我们的仓库中有 master 和 pre-master 两个分支,现在只想将 f 提交到 master分支。 现在将 f 提交到master分支,其实这个f字母是打

    2024年02月02日
    浏览(76)
  • IDEA 中Git 多次 Commit 合并为一次提交

    由于个人习惯的原因,喜欢一个功能分多次提交,导致很多提交比较零碎。 有时候经常需要将零碎的提交合并成一次,该怎么办? 可以使用 IDEA 自带的 Git 插件 将多次 Commit 合并成一次。 如希望将第二次到第六次提交合并成一次提交 选中需要合并的提交,选择 Squash Commits

    2024年02月11日
    浏览(56)
  • 如何将两个pdf合并成一个?pdf合并技巧分享

    在日常工作过程当中,我们经常需要处理一些文件,而文件的处理往往是琐碎的,想要提高工作效率,需要选择一些合适的方法,并掌握一定的技巧,那么,如何将两个pdf合并成一个?pdf合并技巧有哪些呢?接下来就针对这些问题做一下介绍,希望可以帮助您更为高效的完成文

    2024年02月10日
    浏览(44)
  • 【Git教程】(三)提交详解 —— add、commit、status、stach命令的说明,提交散列值与历史,多次提交及忽略 ~

    在Git 中,提交无疑是最重要的概念了。Git 管理的是软件版本,而版本库中的版本是以 提交 的形式保存的。某一次的提交的覆盖范围通常是整个项目,即通过一次提交,该项目中的每个文件就都被存进了版本库中。 下面,我们可以通过 git log --stat -1 命令来看一下提交中究竟

    2024年03月12日
    浏览(73)
  • 【Git】在 IDEA 中合并多个 commit 为一个

    分两种情况: 一种是本地提交还没推到远程,这种好处理 另一种是已经提交到远程分支,这个略麻烦 我想把选中的 4 个commit合并为 1 个 选中要合并的 commit 的前一个,右键选择 reset。在弹窗中选默认的就好,然后有冲突就解决冲突 reset 后,在 local change 页面可以看到前几个

    2024年01月20日
    浏览(45)
  • git :合并某个分支上某次commit记录到另外一个分支

    需要将A分支的某次提交记录 ,合并到B分支 1)切回到 A分支 找到提交的commit id 可以使用git log 命令 或者 右键上次提交的记录 copy reversion number         git checkout A git log 2)  切回到 B分支  使用 git cherry-pick  A的 commitID ,回车 3)最后git status /git push 如果遇到问题,可以使

    2024年02月16日
    浏览(68)
  • Idea中使用git将多次提交记录合并成一次提交记录

            查看Idea中的提交记录,我们希望将 新增了bbb.txt 、 新增了ccc.txt 、 新增了ddd.txt ,这三次提交记录合并成一次提交记录。 2.1、把鼠标放在 新增了bbb.txt这次提交记录上并右键单击 把鼠标放在 新增了bbb.txt 这次提交记录上并右键单击 ,选择 Interactively Rebase from Here 2.2、

    2024年02月21日
    浏览(63)
  • git如何合并多个commit

    1. git rebase -i HEAD~n n:表示要合并的commit个数 例如:git rebase -i HEAD~6,得到如下界面 2. 将要合并的提交pick改为s(squash),将下面5条commit压缩到第一条 3. 修改完毕后,按esc退出编辑,按:q放弃保存并退出,按:wq保存并退出,得到如下界面 如果遇到如下情况,选择直接编辑即可,

    2024年02月14日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包