转载https://www.cnblogs.com/patchouli/p/6511251.html

由于git的权限控制功能比较弱,如果想给某个项目提供代码除了直接获得项目的push权限外,github另外提供了pull request的方式来进行协作。这种方式请求仓库拥有者拉自己的代码,而不需要仓库的权限。
首先,进入上游仓库,点击下图中红框内的fork,通过fork的方式在自己的仓库里建立一个项目。

回到仓库就能看到自己fork的项目,并可以看到项目是从哪个仓库fork来的。这个仓库的使用方法和我们自己的仓库一样。
如果在我们提交前,上游仓库更新了,我们可以在仓库中看到下图中的提示:“This branch is 5 commits behind nusubmarine:master.”。表示我们fork的那个分支和我们仓库的当前分支比向前了5个提交。

我们想要和上游仓库的代码保持同步更新的话,可以从上游仓库那里把那个拉过来。点击下面红框中的pull request。

进入到下面的页面。如果我们没有要提交的内容,会直接提示:“Try switching the base for your comparison.”。如果因为自己仓库里有改动,没有这个提示,自己交换两个比较分支的位置。

交换后,就会变成我们拉上游仓库的分支,点击红框中的按钮创建一个请求。

填写提交的注释,自己在查看历史的时候会比较好理解。

确认后显示如下内容,表示可以和上游仓库同步。之后点下方的merge pull request进行合并,并确认。

最后,我们自己仓库里的代码完成,就需要向上游仓库发一个pull request了。过程和上面相似,只是不用在交换分支,,最后一步和上图有所区别,不是合并而是提交,之后可以在提交历史里看到自己的提交,等上游仓库拥有者同意就可以了

github中fork的使用的更多相关文章

  1. github中fork分支和pullrequest的最佳实践

    github中fork分支和pullrequest的最佳实践 */--> code {color: #FF0000} pre.src {background-color: #002b36; co ...

  2. 出于迁移项目的考虑,GitHub 中 Fork 出来的项目,如何与原项目断开 Fork 关系?

    如果需要为 GitHub 上的项目做贡献,我们通常会 Fork 到自己的名称空间下.在推送代码之后添加 pull request 时,GitHub 会自动为我们跨仓库建立 pull request 的 ...

  3. GitHub中Fork来的仓库如何进行双向更新

    一.做点贡献 想对别人的某个仓库"做点贡献"怎么办? 1. Fork该仓库 首先Fork该仓库,本文以git-learn这个仓库为例 这样自己的账号下就会出现这样一个仓库 2. C ...

  4. [转]五步git操作搞定Github中fork的项目与原作者同步

    命令如下: git clone xxx-fork.git git remote add xxx xxx.git git fetch xxx git merge xxx/master git push ...

  5. Github中进行fork后,原仓库更新了如何与原仓库同步

    我们经常在Github中Fork别人优秀的项目(在自己的GitHub下面生成一个repository),如果原仓库作者或组织更新仓库,此时你Fork的项目并不会更新,如果我们想要更新操作,该如何操作? ...

  6. github中的watch、star、fork的作用

    [转自:http://www.jianshu.com/p/6c366b53ea41] 在每个 github 项目的右上角,都有三个按钮,分别是 watch.star.fork,但是有些刚开始使用 gi ...

  7. 【github&&git】1、github中的watch、star、fork的作用

    [转自:http://www.jianshu.com/p/6c366b53ea41] 在每个 github 项目的右上角,都有三个按钮,分别是 watch.star.fork,但是有些刚开始使用 gi ...

  8. 如何用好 github 中的 watch、star、fork

    http://www.jianshu.com/p/6c366b53ea41 https://www.zhihu.com/question/20431718 在每个 github 项目的右上角,都有三个 ...

  9. github中origin和upstream的区别(转)

    Fork,本身并不是git工具中的一个命令,也不是对git的扩展,它是在GitHub上的概念,是另一种clone方式——在服务器端的clone.而我们通常意义上的clone,是将远程repo 复制一份 ...

随机推荐

  1. (8)Python连接操作MySQL

    pymysql模块下的方法 '''必须实例化对象才能建立连接''' 1.pymysql.connect  #和MySQL建立连接 '''得由对象去调用定义游标''' 2.xxx.sursor()  # ...

  2. C++学习(二十四)(C语言部分)之 结构体1

    1.结构体 存放多个不同类型的数据 但是是相关联的 数组 存放多个相同类型的数据 结构体是存放多个相关联的不同类型的数组 struct 定义一个结构体类型 自定义类型 2.结构体定义方式 定义类型最通 ...

  3. 实验吧—隐写术——WP之 SB!SB!SB!

    我们先打开解题链接,里面是一张愤怒的小鸟里的小猪~ 既然这是隐写题,那么肯定要把图片下载下来进行分析咯~ 下载下来之后,我们看到题目中提示:LSB 什么是LSB? LSB(Least Signific ...

  4. 杜教BM

    #include <algorithm> #include <iterator> #include <iostream> #include <cstring& ...

  5. 《DSP using MATLAB》Problem 6.16

    从别的地方找来的: 截图有些乱. 结构流程图如下

  6. cmake 创建并调用动态库和静态库

    编程之路刚刚开始,错误难免,希望大家能够指出. 刚刚开始学习cmake,写这篇之前我认真的看了“小代码2016”的博客,感觉很不错,看完之后我自己练习了一遍,记录一下. 1.首先建立好合适的目录结构, ...

  7. stl本子

    记事本,不要想到奇怪的地方去 迭代器什么的不会玩quq set: #include<set> set<int> quq; quq.insert(qvq); -- 插入 quq. ...

  8. 如何将centos7作为DNS服务器

    简单来说,dns服务器是起到缓存的作用.比如说我们第一次dig www.baidu.com的时候,dns服务器因为没有解析过百度地址,所以它需要向上一级dns服务器进行查询,然后查询结果会缓存在这台d ...

  9. elasticsearch技术解析与实战(一) 入门和索引

    GET _cat/nodes GET _cat/health GET _cat/shards GET http://10.37.84.124:9200/secisland?pretty { " ...

  10. supervisor使用总结

    简介: Supervisor是一个进程控制系统. 它是一个C/S系统(注意: 其提供WEB接口给用户查询和控制). 它允许用户去监控和控制在类UNIX系统的进程. 它的目标与launchd.daemo ...