本文作者黄昱俊,国资企业投资部总经理,主要负责投资部门建设、投资流程管理、投后资源管理。历经10年,从医疗器械研发工程师到投资管理的蜕变,业余尝试ETF量化投资。

本文介绍如何在GitHub上更新Fork以及PullRequest给源项目。

在GitHub上更新Fork

经常遇到的是Fork一个项目之后,源项目的作者做了新的更改,如果没有同步到我自己的Fork,我所做的更新进行Pull Request后,会产生冲突;因此在更新文件之前、至少是Pull Request之前,应当要更新自己的Fork的。

更新Fork的方法有很多,Git写代码是很好的,当小白通常比较难做,步骤缺了就经常不奏效;所以我自己亲测了一个GitHub上更新Fork的方法,做一个教程,与朋友们共勉;废话少说,步骤如下。

一、进入自己Fork来的项目,按New Pull Request按钮,新建一个Pull Request(简称:PR)。

二、如果自己还没有修改过Fork项目的文件,那么此时可以点击switching the base,切换到基于我自己的Fork项目。

如果已经修改或更新过Fork项目的文件,那么可以通过选择Base Fork和Head Fork来从源项目更新到我自己的Fork项目。

这里有个小技巧:在默认状态下,会是Base源项目,Head我自己的Fork项目;这样选择任何一个时,会调到某个无法更新的页面;解决方法是先Base或Head一个其他人的账号下的Fork,接着选择Head/Base源项目或我自己的Fork项目,这样就不会出现Base和Head都是自己或者都是源项目的情况。

三、Base和Head设置完,就进入Comparing Changes页面,确认一下Base和Head,以及最新的更新内容。

内容没问题就Create PR了,即上图绿色箭头所指向的绿色按钮;接着输入主题,Create。

四、新Create的PR在哪里可以找到呢?进入我自己的Fork项目,导航条上的PR进入,看到Open的有一个,就是刚才更新的。

点击进入确认一下。

五、把源项目的更新Merge到我的Fork项目。

Confirm Merge,确定这个更新;

可以看到,这个PR已经更新完成,呈紫色的Merge状态。

六、最后验证一下是否更新到最新的项目,因为已知是更新了Pattern Recognition,所以直接进入。

查看到下面5个是最新修改的,15个小时之前修改了内容。

至此整个更新Fork的方法步骤已完成,玩得愉快!

将更新的Fork项目PullRequest给源项目

我们Fork项目之后进行了修改或添加新文件,需要Pull Request(简称:PR)给源项目,让作者Merge融入到他的源项目里。

在PR之前,甚至开始修改或创建新文件之前,先看看源项目是否有更新,如有更新,可按第一部分内容,先更新自己的Fork项目,再做创建新文件,老司机说这样冲突比较少。

一、看到别人的好项目,如何“据为己有”?Fork一下咯!

点击Fork,会进入Fork进行中的界面;

Fork完成后,可以在自己的主页(Your Profile)看到Fork的项目。

二、可以通过Create new file或upload file新建或上传文件,要注意的是:上传的文件会把原来同名文件覆盖掉!

这里的会有文件上传的进度条,如下图:共13个文件,已上传9个;上传完成的文件会在下方显示。

这个上传文件由于服务器在国外的缘故,死慢死慢,经常就废了,如下图。

当看到下面这个Processing your files…页面,那就恭喜你了,经过几十次的上传,总算work了;如果出现一片空白的页面,那么只好重复choose your files,再次Confirm Changes。

三、新建PR:可以在Fork项目的根目录下,或者任意的目录下,Pull Request。

Pull Request后会进入Comparing changes页面,核对一下Base Fork和Head Fork(蓝色圆圈)、以及更新的内容(紫色方框);由于已经更新过最新的源项目内容,与源项目同步好了,所以此时显示“Able to merge”(红圈绿字);一切就绪,点击Create创建PR。

输入主题,并Create PR;

这时可以看到已经将这个更新PR给源项目作者,PR序号为#52,状态open。

四、源项目作者Merge此PR,将此次的更改融入到源项目,并形成Commits记录。

序号#52的PR已经Merge:

进入源项目,查看Commit记录:

至此,整个Fork、修改或创建文件、Pull Request以及Merge的步骤已完成,玩的愉快!

(*本文仅代表作者独立观点,转载请联系原作者)

如何更好地玩转GitHub?相关推荐

  1. 如何更好地玩转 GitHub?

    作者 | 黄昱俊 责编 | 郭芮 本文介绍如何在GitHub上更新Fork以及PullRequest给源项目. 在GitHub上更新Fork 经常遇到的是Fork一个项目之后,源项目的作者做了新的更改 ...

  2. 这才是 玩转Github 的正确姿势

    这才是 玩转Github 的正确姿势 GitHub各位应该都很熟悉了,全球最大的开源社区,也是全球最大的同性交友网站~~,但是大部分同学使用GitHub应该就是通过别人的开源链接,点进去下载对应的项目 ...

  3. 学习 Git 玩转 GitHub

    原文地址:学习 Git 玩转 GitHub 博客地址:www.extlight.com 一.基本了解 1.1 什么是版本控制系统 版本控制系统是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修 ...

  4. 网吧无盘服务器为什么玩地下城和穿越火线卡其它游戏不卡,为什么网吧的电脑配置更低,玩游戏却更快更爽?...

    原标题:为什么网吧的电脑配置更低,玩游戏却更快更爽? 随着互联网时代的到来,现在家家户户都有一台或几台电脑几乎成为常态,有人认为网吧行业可能会因此受到冲击,但是相反我国的营业性网吧不仅没有减少,还继续 ...

  5. 猫叔产品读记 | 如何更好的玩转补贴、阿里入股B站商业化变现、儿童口腔市场怎么样?(3期)...

    本博客 猫叔的博客,转载请申明出处 1.前言 本系列主要是猫叔对互联网相关产品(兼任产品经理)路上的视野扩展与信息记录,每日三篇,记录分享. 2.如何更好的玩转补贴 是的,这是一种购买用户的营销手段. ...

  6. Avast 2017发布安全新功能:杀毒更高效,玩游戏更畅快

    本文讲的是Avast 2017发布安全新功能:杀毒更高效,玩游戏更畅快, 对于装有杀毒软件的游戏玩家来说,最痛苦的事情莫过于游戏打的正火热,忽然杀毒软件提醒你各种注意事项(各种安全对话框.气泡提示和扫 ...

  7. 4am永远 鼠标按键设置_电竞鼠标还是专业的更好?玩游戏应该怎么选鼠标?

    原标题:电竞鼠标还是专业的更好?玩游戏应该怎么选鼠标? 电竞鼠标还是专业的更好?玩游戏应该怎么选鼠标? 2020-11-02 21:02:370点赞0收藏0评论 上周末英雄联盟S10总决赛刚刚结束,很 ...

  8. ​在 IDE 中玩转 GitHub

    作者:老逛 链接:逛逛GitHub 前言 说到 GitHub 就不得不提 Git,它的诞生也颇具传奇色彩. 在1991年,大佬 Linus 构建了开源操作系统,并命名为 Linux,随后带领全世界计算 ...

  9. 和逛微博、刷朋友圈一样玩转 GitHub

    自打毕业之后,可以说每天打开 Github 或Email 看有没有 watch 项目的消息或者自己项目的 issue,然后在Explore 看看社区内项目的走势,紧接着开始写代码搬砖的工作,偶尔也会关 ...

最新文章

  1. android 表示空字符串,Android Logcat获取空字符串时非常奇怪的行为
  2. 美国科学院学报:如何在竞争激烈的环境下维持稳定的群体
  3. docker omv 防火墙_我的软路由折腾之旅 篇三:在openmediavault上通过Docker实现OPENWRT旁路由功能...
  4. 云计算之路-试用Azure:数据库备份压缩文件在虚拟机上的恢复速度测试
  5. 更新 Ubuntu 系统,避免报错「校验和不符」
  6. 使用ABAP操作Excel的几种方法
  7. centos mysql安装
  8. 机器学习之概念漂移-concept drift
  9. python pyquery 解析html数据(2)
  10. C向Python正确传递数组的代码
  11. 详解大型分布式电商系统架构
  12. “仿宋_GB2312、楷体_GB2312、方正小标宋简体”的下载和安装方式【实操】
  13. WiFi 深入理解:时域和频域
  14. 计算机打不开硬盘,电脑有一个磁盘打不开怎么处理
  15. python下载m3u8文件视频
  16. 从“黑五”看亚马逊海外购的变与不变
  17. 大话赛宁云 | 培训服务打造实战型网络安全人才
  18. 素雅的登录界面,简单而优雅
  19. (MACN小米AI 轻量化SISR)A Matrix-in-matrix Neural Network for Image Super Resolution
  20. QT西游回合制源码+java后台管理系统

热门文章

  1. 密码学研究-数字签名
  2. 让你的输入框使用Google云语音输入技术
  3. 关于并发处理,下列哪些说法符合《阿里巴巴Java开发手册》
  4. 金融学名词M0, M1, M2, M3, M4, M5, M6
  5. 金融数据分析(四)-------矩,偏度,峰度
  6. 各系统QT安装ROS后不显示src问题
  7. HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
  8. 数据分析-pca协方差
  9. [C#,Java,PHP] - IMAP文件夹名称编码和解码方法
  10. 如何查看服务器有多少网站--免费工具