学习总结之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 期末总 ...
随机推荐
-
一个开关电源传导、辐射处理案例-----Layout环路
这是一款输入宽电压120-277V 60HZ,输出48V,273mA的电源,使用美芯晟MT7933,采用Buck拓扑结构. 注:在最初的设计中,预留电感L1.L2,CBB电容C1.C2作为传导测试元 ...
-
Hirbernate第三次试题分析
解析:HQL语句可以执行T-SQL语句,但执行步骤较复杂,需引入jar包等各种配置. 解析:final修饰的成员变量必须由程序员显式地指定初始值. static一般用于修饰全局变量 解析:Hib ...
-
代码生成的地址:mygeneration
一个代码生成的地址: https://gitshell.com/shiningrise/mygeneration/
-
sort() 方法用于对数组的元素进行排序
语法 arrayObject.sort(sortby) 参数 描述 sortby 可选.规定排序顺序.必须是函数. 返回值 对数组的引用.请注意,数组在原数组上进行排序,不生成副本. 说明 如果调用该 ...
-
如何在CentOS5中增加CentALT的源
1. 建立centalt.repo 指令: vi /etc/yum.repos.d/centalt.repo 2. 將下面的內容貼進去 [CentALT] name=CentALT ...
-
Intent(二)
以Android高级编程一书中的一个例子为例: 1, 创建一个ContactPicker项目,其中包含一个ContactPicker Activity package com.paad.contact ...
-
MVC、MVP、MVVM 模式对比
MVC.MVP和MVVM这些开发模式为了分离视图(View)和模型(Model)而提出来的,直白说就是为了前后端分离. 1. MVC(Model View Controller)模式 MVC是比较直观 ...
-
Spring Boot 2.0 教程 | AOP 切面统一打印请求日志
欢迎关注微信公众号: 小哈学Java 文章首发于个人网站 https://www.exception.site/springboot/spring-boot-aop-web-request 本节中,您 ...
-
java 每间隔一段时间执行一段代码
Java中java.util.Timer类中有若干个schedule的重载方法,其中 void schedule(TimerTask task, long delay, long period ) 安 ...
-
PL/SQL Developer
下载 一.Oracle 客户端(两种) 1.免安装轻量版(以这个为例) https://www.oracle.com/technetwork/database/database-technologie ...