发起一个新的PR(pull request)比较容易,在网页上点击就可以,注意选择好目标分支。

接下来,会进入review的阶段,这个阶段可能会比较漫长,review的comments和你的重新修改commit,甚至包括reply

在这个漫长的阶段,PR要merge的目标分支可能又会又很多的提交,即使你的PR被review通过了,解决冲突也是一件麻烦的事情,你可以选择在类似GitHub的网站上通过web的方式修改冲突(如果冲突比较少还是可以的),另一种方式就是在本地解决冲突(有IDE的帮助)再push上去。

接下来,介绍一下在这个漫长的PR阶段,如何保持代码在最小的冲突情况下,并且保持commit数量只有一个(很多人要求PR的commit只有一个)

比如,自己的分支是 feature/test,目标分支是 dev

  1. 保证本地的 feature/testdev 分支,代码都是最新的

  2. 切换到 feature/test 分支,执行

git rebase dev
复制代码
  1. 手动解决冲突之后,执行
git add .
复制代码

用来标记冲突的文件已经解决。

  1. git status 看一下,如果文件都是绿色的,就可以继续执行rebase
git rebase --continue
复制代码

用来让rebase继续执行。如果还出现冲突,请反复执行第3,4步。

  1. 如果需要把commit数量压缩成1个,我这里选择使用reset
git reset --soft [commit-id]
复制代码

这里的 [commit-id] 指的是 feature/testdev 分支的共同父节点。

  1. 然后执行一次commit
git commit -m "just test"
复制代码
  1. 一切顺利,执行push(需要强推)
git push -f origin feature/test
复制代码

反复执行以上的步骤,来度过可能很漫长的PR review阶段,直到最后成功merge到目标分支。

转载于:https://juejin.im/post/5cf098e7f265da1bd424660e

Git自学成才——Pull Request相关推荐

  1. git提交pull request到主项目

    标签(空格分隔): GIT ###流程一:如何拉取别人项目并且pull request #####1.fork到自己账号下 首先找到你的共同开发的主项目,然后点击fork,例如下面的图片展示. 点击上 ...

  2. 为什么git的“ pull request”不称为“ push request”?

    本文翻译自:Why is a git 'pull request' not called a 'push request'? The terminology used to merge a branc ...

  3. git使用pull request

    完整流程: https://edav.info/github.html#first-things-first Creating a pull request from a fork

  4. 好代码是管出来的——Git的分支工作流与Pull Request

    上一篇文章好代码是管出来的--使用Git来管理源代码 介绍了常用的版本控制工具以及git的基本用法,从基本用法来看git与其它的版本控制工具好像区别不大,都是对代码新增.提交进行管理,可以查看提交历史 ...

  5. git 上的pull request 是什么意思?

    1.git 上有常见的pull request 功能 2.pull request 的含义 解释一:    有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Gi ...

  6. Git中的pull request真正比较的是什么?

    前言 利用git版本控制工具时,我们通常会从主分支拉出新分支进行开发,开发完成后创建pr(也就是pull request),让其他小伙伴帮忙review,确定代码没有问题后再将新分支合并到主分支上.但 ...

  7. Git - Pull Request工作流

    Pull Requests是Bitbucket上方便开发者之间协作的功能.提供了一个用户友好的Web界面,在集成提交的变更到正式项目前可以对变更进行讨论. 开发者向团队成员通知功能开发已经完成,Pul ...

  8. PR(Pull Request)简单介绍以及git的相关使用

    最近在使用git往gitee上提交PR,发现对于git的使用以及提交PR的一些相关术语不大熟悉,通过网上查阅资料加上自己的实际动手操作在此进行整理本次学习收获.在此感谢提供解答的各位老师. 一.PR简 ...

  9. Git——pull request提交实战

    摘要 github 上有很多优秀的开源项目,很多时候我们不仅仅只是满足于使用,同时也想一起参与开源项目的开发,贡献自己的代码.今天这篇文章就给大家介绍一下如何在 github 上提交 PR,让我们一起 ...

最新文章

  1. vim简单使用教程【转】
  2. Spring-AOP 静态普通方法名匹配切面
  3. ajax nginx 转发 sessionid_Nginx+Apache实现动静分离 - 孙天飞
  4. linux io端口复用,Linux系统IO复用接口(select、poll、epoll)
  5. Sonarqube 中文插件专栏
  6. 自制公众平台Web Api(微信)
  7. 【技术人快报190期】Linux之父脏话连篇大骂Intel漏洞补丁+我国首颗高通量卫星投入使用...
  8. 基于jquery响应式网站图片无限加载瀑布流布局
  9. 分布式流控介绍和实现原理
  10. WCF中DBNull序列化的问题
  11. SpringBoot+Thymeleaf+ECharts实现大数据可视化(基础篇)
  12. C语言 定时器的原理,单片机定时器作用原理及学习应用详解
  13. C语言删除字符串中的单词
  14. MP地面站二次开发教程(二)MP的框架与修改
  15. java抽象类重载_012 JAVA 抽象类、接口、String类的基础了解
  16. 文心一言 vs GPT-4,百度背水一战交卷
  17. Git详解之特殊配置与钩子应用
  18. 三键调光调色带定时遥控台灯方案-DLT8T10S-杰力科创
  19. 修道士和野人java_修道士和野人问题
  20. 全国影城年底前引进4K技术 观影清晰度翻倍增长

热门文章

  1. 洛谷 P5725 求三角形
  2. SHA-1算法详解和C++实现
  3. workerman 端口复用作用
  4. 读博士计算机专业学制几年,最容易考的博士专业-博士要读几年的?博士学制几年?容易考吗? – 手机爱问...
  5. 自动驾驶的基本过程(三):线控
  6. C++学习笔记04-字符变量
  7. maven本地pom文件安装到本地仓库中
  8. 陈南峰质量讲堂2—— 产品质量管理体系之间的关系
  9. Word 查找替换通配符
  10. C语言数字图像处理---1.1图像的像素格式与图像读写