【学习总结】Git学习-参考廖雪峰老师教程八-使用GitHub
学习总结之Git学习-总
目录:
一、Git简介
二、安装Git
三、创建版本库
四、时光机穿梭
五、远程仓库
六、分支管理
七、标签管理
八、使用GitHub
九、使用码云
十、自定义Git
期末总结
八、使用GitHub
在GitHub上,可以任意Fork开源仓库
自己拥有Fork后的仓库的读写权限
可以推送pull request给官方仓库来贡献代码
我们一直用GitHub作为免费的远程仓库,
其实GitHub还是一个开源协作社区,通过GitHub,既可以让别人参与你的开源项目,也可以参与别人的开源项目
在GitHub上,利用Git极其强大的克隆和分支功能,广大人民群众真正可以第一次自由参与各种开源项目了
------------------------------------------
8.1 参与GitHub中的开源项目< fork and clone and pull >
:
fork:在自己的GitHub账号下添加或者说克隆了一个在线的某某开源项目
clone:在fork的情况下,从自己的账号下clone仓库(到本地?),这样才能推送修改。
- 如果从别人家的仓库地址git@github.com:xxx/yyyyy.git克隆,因为没有权限,将不能推送修改
pull request:本地做好,推送到自己的仓库,然后从GitHub发起一个pull request,对方同意后可以加到对方仓库
------------------------------------------
8.2 一个例子 < bootstrap项目 >
人气极高的bootstrap项目,一个非常强大的CSS框架
访问它的项目主页https://github.com/twbs/bootstrap,点“Fork”就在自己的账号下克隆了一个bootstrap仓库,然后,从自己的账号下clone
Bootstrap的官方仓库twbs/bootstrap、你在GitHub上克隆的仓库my/bootstrap,以及你自己克隆到本地电脑的仓库,他们的关系就像下图显示的那样

如果你想修复bootstrap的一个bug,或者新增一个功能,立刻就可以开始干活,干完后,往自己的仓库推送。
如果你希望bootstrap的官方库能接受你的修改,你就可以在GitHub上发起一个pull request。当然,对方是否接受你的pull request就不一定了。
------------------------------------------
8.3 一个demo:推送给廖老师的库
Fork一下练手的仓库:廖老师的仓库
创建一个your-github-id.txt的文本文件,写点自己学习Git的心得,然后推送一个pull request给廖老师那边
以下是测试:
8.3.1 直接pull request试试:(好像不行?那先fork)



8.3.2 搜索这个疑惑:
在知乎看到的,应该是:GitHub仓库主没邀请你加入而你又想改库的情况下:
不能直接改人家的源库,只好在自己GitHub里复制一份,改好以后,“求拉”,仓库主觉得可以,就同意你的修改到源库。


必走流程:
1 先
fork别人的仓库,相当于拷贝一份,相信我,不会有人直接让你改修原仓库的
2clone到本地分支,做一些bug fix
3 发起pull request给原仓库,让他看到你修改的 bug
4 原仓库review这个 bug,如果是正确的话,就会merge到他自己的项目中
8.3.3 以下是重新测试:(先fork后pull request)
step1 - fork(可在自己主页查看是否fork到了)




step2 - clone到本地然后做一些bug fix的推送(还是决定不抄小路了)
找到clone地址 --> Git bash窗口进入本地要放克隆库的保存路径下 -->git clone + <在GitHub可查到的ssh地址>


先进入克隆好的本地文件夹下 --> 新建一个准备推送的文件 --> add、commit、push --> github查看一下



step3 - 发起pull request给原仓库
- 注意:这一部分里,第一个操作里,点完以后就跳转到廖老师主页了





step4 - 做完以上步骤就结束了,下面是等待时间。
就像好友申请需要等待一样,同意merge(应该算是一种合并)也需要时间。
【学习总结】Git学习-参考廖雪峰老师教程八-使用GitHub的更多相关文章
- 【学习总结】Git学习-参考廖雪峰老师教程-总
公元2018-10-21 实验室台式机 win7 64位 参考教程: 廖雪峰Git教程 其他资料:Git-book 北大一只总结的笔记,最终整理的时候可以参考:Git笔记 评论区看到的另一个人,总结在 ...
- 【学习总结】Git学习-参考廖雪峰老师教程四-时光机穿梭
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程六-分支管理
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程三-创建版本库
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程五-远程仓库
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程九-使用码云
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程二-安装Git
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程七-标签管理
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
- 【学习总结】Git学习-参考廖雪峰老师教程十-自定义Git
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...
随机推荐
- 持续代码质量管理-SonarQube-7.3部署
Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar ...
- LeetCode算法题-Number of Segments in a String(Java实现)
这是悦乐书的第226次更新,第239篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第93题(顺位题号是434).计算字符串中的段数,其中段定义为非空格字符的连续序列.请注 ...
- LeetCode算法题-Missing Number(Java实现-四种解法)
这是悦乐书的第200次更新,第209篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第65题(顺位题号是268).给定一个包含n个不同数字的数组,取自0,1,2,...,n ...
- js FormData方法介绍
1. 概述 FormData类型其实是在XMLHttpRequest 2级定义的,它是为序列化表以及创建与表单格式相同的数据(当然是用于XHR传输)提供便利. 2. 构造函数 创建一个formData ...
- IIS 发布ASP.NET MVC 4.0 错误500.21解决办法
由VS2013 写好的MVC 4.0 发布在服务器IIS 上报错500.21,解决办法:尝试多种网上介绍的办法,最后发现还是模块问题.
- [福大软工] Z班 团队Alpha阶段成绩汇总
团队成绩汇总表 团队 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 总分 Dipper 9 85 90 26 42 27.5 120 74 25 111 19 628.5 SW ...
- python 之常用模块
一 认识模块 二 常用模块 (1)re模块 (2)collections模块 一 认识模块 (1)什么是模块 (2)模块的导入和使用 (1)模块是:一个模块就是一个包含 ...
- 5.01-requests_auth
import requests # 发送post请求 data = { } response = requests.post(url, data=data) # 内网 需要 认证 auth = (us ...
- UVA11925-Generating Permutations(贪心)
Problem UVA11925-Generating Permutations Accept: 214 Submit: 1429Time Limit: 1000 mSec Problem Desc ...
- Mybatis基础核心类说明
1: org.apache.ibatis.mapping.ParameterMapping 为Mybatis参数的抽象表示,包括Java类型与数据库类型以及类型处理器属性名字等等!! 例如: 其中i ...