gitlab建立新分支提交,cherry-pick部分更新

这篇具有很好参考价值的文章主要介绍了gitlab建立新分支提交,cherry-pick部分更新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

gitlab介绍

  • GitLab是一个基于Git的在线代码托管和协作平台,提供源代码管理、单元测试、CI/CD构建、代码审查等功能。它是一个开放源代码的Git仓库管理系统,使用 Ruby on Rails 构建
  • GitLab 不仅具有自己的 Git 仓库管理系统,还具有很多其他的功能,如审计日志、代码合并、CI/CD流水线、问题跟踪等。它支持公共和私有仓库,可以自己搭建也可以使用 GitLabSaaS服务
  • GitLab使用简单,功能强大,被广泛应用于企业和开源社区。GitLab也提供了丰富的APIWebhooks接口,使得用户可以方便地将GitLab与其他系统进行集成
  • Gitlab 官网提供了 gitlab.comSaaS 服务,用户可以直接注册并使用,但是需要注意的是官网服务是收费的。自部署 Gitlab 则需要用户自己搭建gitlab实例,用户需要下载gitlab的开源代码,然后根据服务器配置和需求进行相应的安装和配置,需要使用者有一定的系统操作和管理经验。自部署gitlab一般是免费的,但需要考虑到运维和维护的成本。一般研发经理或技术leader承担此项工作。

cherry-pick功能介绍

  • pick的意思是“采摘”,cherry的意思是“樱桃”,连在一起就是“摘樱桃”。所以该功能的意思就是“挑拣自己需要的提交”
  • Gitlab cherry-pick是从一个分支中提取单个提交并将其应用于其他分支的操作。这通常用于将特定更改(如修复错误或特定功能)应用于其他分支而不必将所有更改都合并。
  • 通过Gitlab cherry-pick,您可以在另一个分支中应用单个提交。这允许团队成员在需要时将已有的特定修补程序或修复应用于其他分支。
  • 这可使您避免在每个分支中重复更改,从而增强了代码库的可维护性和代码重用性。
  • 要使用Gitlab cherry-pick,您需要了解以下内容:
    • 1.要选择具体提交相应的SHA(ID)
    • 2.使用Gitlab cherry-pick命令将提交引入到其他分支中。
    • 3.检查提交是否已成功应用于目标分支中。

实际操作

首先,你需要在GitLab上新建一个分支。

  1. 打开项目,点击“Branch”按钮,输入新分支名,点击“Create branch”创建一个新分支。

  2. 克隆新分支到本地:

git clone [项目地址]
cd [项目名称]
git checkout -b [新分支名称] origin/[新分支名称]
  1. 找到需要 cherry-pick 的提交,可以使用以下命令查看提交历史:
git log
  1. 执行 cherry-pick 命令,将提交应用到当前分支(新分支):
git cherry-pick [提交ID]
  1. 如果涉及到冲突,需要解决冲突后再提交:
git add [文件名]
git cherry-pick --continue
  1. 如果需要 cherry-pick 多个提交,可以使用以下命令:
git cherry-pick [提交ID1] [提交ID2] ...
  1. cherry-pick 完成后,需要将新分支推送到 GitLab
git push origin [新分支名称]

这样就完成了 cherry-pick 部分更新到新分支的操作。

界面操作

  • 如果不熟悉命令操作,gitlab有操作界面,在界面上操作也很方便

  • 或者直接在Intellij idea之类的可视化集成开发环境的界面里操作,也很方便

  • 下面以一次合并需求和在Intellij idea操作为例,讲解一下。

  • 需求场景:研发的产品基础版已归档和推向市场使用,高级版功能开发还在进行中。高级版的功能开发,各个开发人员提交合并请求,合并到主线。此时市场客户提出一个新需求,我们需要进行代码变动和新增,考虑到系统的稳定性,这么多新功能代码肯定不能直接部署给客户使用,完整的再对整个系统走一遍测试流程,在人力和时间成本上吃不消。所以针对客户的更新部署版本,只是原有基础版功能,加上这个客户提出的新功能,其他功能代码要排除出去。

  • 解决办法:针对基础版归档时间点,单独建立一个新分支作为基础版归档,然后使用 cherry-pick 功能,把客户提出的新功能的开发的代码的提交记录,按照时间顺序,一个个pick到本分支,再一起提交即可。

  • 在主分支,根据归档时间,选择对应的提交记录,右键,建立新分支(因为我已经操作过了,所以这里多了一个分支标志)
    gitlab cherrypick,工具使用,gitlab,git,cherry-pick,源代码管理gitlab cherrypick,工具使用,gitlab,git,cherry-pick,源代码管理

  • 右下角可以找到新加的分支名称,点击,在弹出框里点击提交Push...,提交新分支到gitlab仓库。
    gitlab cherrypick,工具使用,gitlab,git,cherry-pick,源代码管理

  • 推送到仓库后,新分支就建立成功了,可以去cherry-pick提交了,从下往上找,把自己需要的bug修复和某个功能的代码提交,右键,挨个pick即可,如果有代码冲突手动处理下
    gitlab cherrypick,工具使用,gitlab,git,cherry-pick,源代码管理

  • 这里的关键,是要求代码开发人员提交代码时,描述要写的很清晰,一次提交只针对某一块功能,而且新功能代码大多比较独立。如果提交描述不清晰,或者提交内容与描述不符,或者代码都糅杂在一起、独立性很差,使用这个功能就会很费劲了,需要人工合并和删除不需要的代码

  • 所有需要的提交都pick完,提交推送到仓库即可,新的版本和功能就完成了,剩下的打包交给测试人员吧
    gitlab cherrypick,工具使用,gitlab,git,cherry-pick,源代码管理文章来源地址https://www.toymoban.com/news/detail-797535.html

到了这里,关于gitlab建立新分支提交,cherry-pick部分更新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【随笔】Git 高级篇 -- 整理提交记录(上)cherry-pick(十五)

    💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘   大家好,又见面了,我是夜阑的狗🐶,

    2024年04月10日
    浏览(31)
  • git合并代码命令 分支合并代码 cherry-pick merge rebase区别

    1.cherry-pick 需要注意 暂存未提交的更改 暂存更改: 使用git stash或git stash push命令暂存当前工作目录和暂存区的更改。你可以提供一个消息作为参数,以便更容易地识别stash项: 执行cherry-pick: 现在,你的工作目录是干净的,可以安全地执行cherry-pick操作了。找到你想要cherry

    2024年04月12日
    浏览(39)
  • 【随笔】Git 高级篇 -- 本地栈式提交 rebase | cherry-pick(十七)

    💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘   大家好,又见面了,我是夜阑的狗🐶,

    2024年04月12日
    浏览(32)
  • 【随笔】Git 高级篇 -- 提交的技巧(下) cherry-pick& commit --amend(十九)

    💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘 您的点赞、关注、收藏、评论,是对我最大

    2024年04月14日
    浏览(35)
  • 【随笔】Git 高级篇 -- 纠缠不清的分支 rebase | cherry-pick(二十四)

    💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘 您的点赞、关注、收藏、评论,是对我最大

    2024年04月12日
    浏览(36)
  • git把一个分支上的某次修改同步到另一个分支上,并解决git cherry-pick 冲突

    我们在工作中经常会碰到好几个同事共同在一个分支上开发,一个项目同时会有好几个分支,我们在feature上开发的功能时,有可能某个需求需要提前发布,这个时候我们已经在feature A上开发完成,但是需要在master上发布。这个时候该怎么办呢? 我们是不是可以直接将feature

    2024年02月01日
    浏览(36)
  • git中cherry-pick报错是一个合并提交但未提供-m选项的解决方法

    在 new_feature 分支上,想 cherry-pick 一下另一个分支上的提交,不想发生如下错误: 在原始的命令后面加上 -m 1 即可:

    2024年02月15日
    浏览(34)
  • git中的cherry-pick和merge有些区别以及cherry-pick怎么用

    git中的cherry-pick和merge在使用场景上有些区别: cherry-pick用于将另一个分支的某一次或几次commit应用到当前分支。它可以选择性地拉取代码修改。 merge用于将两个分支合并成一个新分支。它会把整个分支上的所有修改都合并过来。 具体区别: cherry-pick通常用于将bug修复从发布分支

    2024年02月09日
    浏览(37)
  • cherry-pick多次

    git cherry-pick命令执行多次,会怎样?以下通过idea进行演示,先总结结论: 1、cherry-pick无冲突时,仅能执行一次此命令,第二次cherry-pick会直接卡住 2、cherry-pick有冲突时,可执行多次此命令,每次都是拿各分支最新代码让人合并,每次执行都要解决冲突 下面通过idea实际操作,

    2024年02月07日
    浏览(21)
  • git cherry-pick 用法

    说明:本人基于 master 新建分支 master-fxd,那么目标分支为 master-fxd 说明,其他分支例如 dev 提交的代码,使用 jihulab.com 比较 master-fxd 和 dev 分支,下图右侧复制单个提交 id

    2024年02月12日
    浏览(43)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包