GitHub已经引入了draft pull 请求来处理正在进行的工作场景,在这些场景中,你可能希望在代码准备好接受审查之前先打开PR或者与您的队友交流一下。

在创建新PR时,现在可以使用下拉菜单选择是创建普通的pull请求还是draft pull请求。draft pull请求与普通请求明显不同,它不能合并。你可以通过添加评论或要求其他团队成员查看并提供反馈来自由地修改draft PR。重要的是,draft PR不会每有一处修改就给所有的代码所有者发通知。这是draft PR能够实际用起来的一个关键特性,否则,那些不怎么需要关注的修改也会全给他们发通知。

当你完成一个draft PR时,可以简单地把它标记为“已准备好审查”,就能将其状态设置为正常的PR了,或者如果它没有什么进展,你可以将其废弃。

一场在Hacker News上的讨论为这个新特性提供了更多的背景和基本原理。许多用户表示,他们已经通过在PR名称中添加“WIP”或“DO NOT MERGE”来创建draft pull 请求了。这表明,draft PR是一种将某种常见但非正式的实践进行正式化的方法。

这些PR的作用是促进讨论,开始知识共享,并向其他开发人员更清楚地介绍自己的进展情况,而不是让他们更细致地检查分支。但又是我绝对不想合并的那个。

用户tedivm指出,在开发新特性时,不能将draft pull 请求视为特性分支的替代方法。因此,所有当前的CI/CD良好实践都不受draft PR的影响。实际上,他建议你仍然创建特性分支,并在这个分支不断提交,频繁地将其推送到你的存储库,但是你可以在任何时间点创建draft pull 请求,其主要目标有两个:展示特定特性的工作已经完成和干到什么地步了;提供一种简单的方法来检查所涉及的更改,并让人们尽早对代码本身进行注释。

用户gfosco特别强调了draft PR的价值,当你参与一些大型和复杂的项目时,你无权创建分支,因此只能在自己的fork上开展工作。在这种情况下,让其他项目成员检查你的fork或分支以获得反馈实际并非一个可行的方法。相反,创建一个draft PR可以无缝地协作。

其他评论指出,他们更喜欢通过其他方法(如wiki、文档或bug跟踪器)管理此类讨论。

GitHub的draft PR并不是首创,因为GitLab已经提供了一个类似的功能,叫做WIP合并请求。类似地,用于Android开发的原始版本管理系统Gerrit也已经提供了与draft pull 请求相同的概念。

查看英文原文:GitHub Draft Pull Requests Enable New Collaboration Workflows

GitHub Draft Pull请求支持新的协作流程相关推荐

  1. 【原创】Github团队协作之Pull请求

    首先声明:Github上关于代码团队协作方式有很多种,这里只讲述Github上其中的一种代码团队协作方式.   Pull请求(Pull request) 1 综述     协作者通过fork一个新的代 ...

  2. github Pull请求(Pull request)

    Pull请求是一个非常棒的方式,通过fork一个新的代码库用来独立开发,并将变更贡献回原始代码库.在一天结束的时候,如果我们愿意,我们可以发送一个pull请求给代码库所有者,来合并我们的代码更改.Pu ...

  3. GitHub for windows使用教程(三) 团队协作流程

    团队协作流程 认识Flow GitHub Flow是一个轻量级的,基于分支的工作流程,支持团队和部署在那里的定期做项目. 为团队成员写入权限 在我们的队友添加一个写的权限,这样我们的队友才能很好的修改 ...

  4. github的pull request是指什么意思?有什么用处

    github的pull request是指什么意思? 来看看某乎某位阿牛的理解,多么的简单粗暴! 我尝试用类比的方法来解释一下 pull reqeust.想想我们中学考试,老师改卷的场景吧.你做的试卷 ...

  5. 将已有项目提交到github/从github上pull到本地

    2019独角兽企业重金招聘Python工程师标准>>> 之前都写过一篇github常用命令的文章,可是这些日子来,发现自己根本没掌握,真是很讨厌github这种提交方式,如果能够使用 ...

  6. 【GitHub】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?

    GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗? 在 GitHub 上混久了,对 Pull Request 就-- 在 GitLab 上混久了, ...

  7. 06-Flutter移动电商实战-dio基础_Get_Post请求和动态组件协作

    06-Flutter移动电商实战-dio基础_Get_Post请求和动态组件协作 上篇文章中,我们只看到了 dio 的使用方式,但并未跟应用关联起来,所以这一篇将 dio 网络请求与应用界面结合起来, ...

  8. 通用高性能 Windows Socket 组件 HP-Socket v2.2.1(增加 PULL 模型支持)

    HP-Socket 是一套通用的高性能 Windows Socket 组件包,包含服务端组件(IOCP 模型)和客户端组件(Event Select 模型),广泛适用于 Windows 平台的 TCP ...

  9. SDL安全设计工具,一款支持多人协作实施威胁建模的微信小程序

    SDL安全设计工具,一款支持多人协作实施威胁建模的微信小程序楔子痛点威胁建模活动组织方法道具使用方法要点使用示例多人单人Q&A其他游戏参考阅读致谢 Shingle,音[ˈʃɪŋɡl],是世界上 ...

最新文章

  1. 直接定址表03 - 零基础入门学习汇编语言74
  2. CTO俱乐部下午茶:技术团队管理中的那些事儿
  3. 使用STM32CubeMX,生成STM32F103ZE SPI3 HAL 工程
  4. Shiro相关文章资料
  5. python自动发邮件运行正常就是收不到邮件是为什么_python stmp module 163邮箱发送邮件不成功...
  6. python if else用法_python列表推导式中使用if-else
  7. jquery文件上传插件uploadify 讲解
  8. Qt4_你可以使用加农炮了
  9. Element-UI + Vue.js + SpringBoot 实现前后端分离入门项目
  10. 数据科学家在“新常态”下发生了怎样的转变?
  11. python装第三方库有几种方法_Python安装第三方库的4种方法
  12. 爬取豌豆荚app数据(总结篇)
  13. 转 iOS socket
  14. C++ 的异常处理解答
  15. maven无法下载依赖问题解决
  16. 浏览器下载Firefox os 模拟器安装教程步骤详解
  17. 解决方案PPT设计:如何作出标准通用型的目录页?
  18. 关于RecyclerView 设置条目间距
  19. 百利天恒更新招股书:上半年收入约3亿元,持续加大研发投入
  20. 读林锐《软件工程思想》------讲述软件开发和做程序员的道理--语录

热门文章

  1. zabbix监控添加psql数据库和sql_server数据库模板
  2. Confluence5.1 最新版的安装破解汉化
  3. CCNET+MSBuild+SVN实时构建的优化总结
  4. 超全面的JavaWeb笔记day02CSSJavaScript
  5. 看看XStream注解
  6. 开源中国iOS客户端学习——(一)Prefix.pch文件
  7. tcpdump最简单用法
  8. FreeTextBox License机制的粗浅分析
  9. 优词词根词典mdx_推荐|一波好用的在线英语词典网站
  10. hdf heg 批量拼接_[转载]MODIS Aerosol product/MODIS气溶胶产品