Github 入门(“趣考网络”学习第一步)
目录
- 为什么要使用GitHub
- 下载Github Desktop
- fork 与 pull request
- git pull,fetch,merge,push的区别与联系
- git clone 与 download 区别
- 当源仓库更新时,让自己fork的仓库复制这些更新
1.为什么要使用GitHub
作为“全球最大同性交友网站”,全世界最大的代码集中地,最大的代码托管平台,GitHub的存在必然有它存在的意义。
私以为,GitHub能为我们干这么一些事情:
- 寻找学习资源,比如下载各种文档。另外,一些书本会把源码上传至GitHub供读者学习使用。
- 参与感兴趣的开源项目,增强与他人协作开发的能力。
- 上传自己的代码,记录自己的成长,打造自己的名片。并且可能会有热心人士指出代码的不足,这难道不是间接的提升自我。
2.下载Github Desktop。
- 下载网址
这个可视化工具可以让GitHub的使用简单点吧。
3.fork 与 pull request
fork*:若在GitHub上找到自己感兴趣并且想加入一起完成这个项目。又或者是一个团队一起开发,等于创建一个代码仓库。这时候便需要是要 fork 这个功能了。等于你成了这个项目的一个协同开发者。
在这之后在你的账号便会自动生成一个新的仓库(可以理解为原仓库的复制版)
这时候desktop就登场了。
在这边将 自己仓库 克隆的本地,这是相当在本地创建了一个副本。
选择正确的分支,点击右下在本地打开。
就像这样,我们这时候可以在这个文件夹中增加或者删除文件或代码。之后desktop上会显示你的更改。确认更改无误后
按下 push origit 按键,这时候你的GitHub的仓库便被更改了。
这时,如果想把自己所做的修改合并到源仓库的话。
按下 pull request 按键。
左下角将会显示你所做的修改。确认之后,点下右上的 view pull request 。
在方框内可以写写自己的看法或是简单的介绍。之后点击右下角就行了。
在这之后,其他人可以对你的 pull request 评论。只有在仓库的最初创建者同意”merge“你的更改时,这时候pull request 才算完成使命你。
3.git pull,fetch,merge,push的区别与联系
- git push 是把本地更改上传至网络端。
- git merge 是把代码clone的代码与本地代码结合。
- pull,fetch 都是把网络端的代码带回本地,但它们之间有点区别,可以理解为 pull=fetch+merge
4.git clone 与 download 区别
采用git clone的项目包含.git目录,这里面有历史版本信息。
采用下载zip文件的是没有版本历史信息的。只是当前分支的最新版本。
也就是说git会记录你对仓库做的一举一动,什么时候上传,删除或更新了代码或文件。若采用clone的话,你可以清楚知道项目的”成长“,这有利于对项目加深理解,并且更易于代码的维护。download则无这些记录。
4.当源仓库更新时,让自己fork的仓库复制这些更新(不知道有没有更简单的方法)
- 在自己厂库点击 new pull request 按键。
将左边改选为自己fork的仓库的分支。
这时候它会提示这是两个一样的分支,不能pull request。这时就需要点击右上角的篮圈了。
将右边分支换为源仓库里的分支,接下来只需点击创建pull request。
其实这就相当在源仓库发送一个pull request 到你fork的仓库,最后点击”merge“便完成了源仓库更新的复制。
Github 入门(“趣考网络”学习第一步)的更多相关文章
- Java 学习第一步-JDK安装和Java环境变量配置
Java学习第一步——JDK安装及Java环境变量配置 [原文] 2014-05-30 9:09 Java SE 阿超 9046 views Java作为当下很主流的编程语言,学习Java的朋 ...
- Qt 学习第一步 做计划和确定目标
接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edi ...
- Java学习第一步: Win7配置JDK环境
转摘"专注JavaWeb开发":http://www.javaweb1024.com/java/Javajichu/2015/03/02/353.html 下载JDK并安装到本机 ...
- Struts2 学习第一步准备工作
第一步:安装下载MyEclispe10 对于MyEclispe的下载安装就不再详述了. 第二步:下载Struts-2.3.15 Struts-2.3.15下载地址: http://struts.apa ...
- java学习第一步,使用IntelliJ IDEA编写自己的第一个java程序
首先下载java的jdk,然后说一下IDEA的配置 IntelliJ IDEA目前公认的最好的java开发工具,不过一般的学校的教学还是使用eclipse来进行java的开发.所以老师一般只会教你如何 ...
- caffe windows 学习第一步:编译和安装(vs2012+win 64)
没有GPU,没有linux, 只好装caffe的windows版本了. 我的系统是win10(64位),vs 2012版本,其它什么都没有装,因此会需要一切的依赖库. 其实操作系统只要是64位就行了, ...
- GitHub注册失败,卡在第一步
同事说他无法注册GitHub,我一开始以为GitHub又无法登录进去,我就登录了自己的GitHub账号,没有问题,可以登录啊,见第一个标签页.同一局域网,不可能我能登录,你无法完成注册啊.于是,我就在 ...
- android 学习第一步
今天是2015年7月24号,今年下半年的主要学习方向是android,学习的目标是做出3个或以上的有实用价值的app.
- Angular学习第一步
前端开发越来越流行了,作为后端开发人员,也开始需要学习前端了.随着前端技术的发展,前端技术也越来越复杂,复杂程度不亚于后端,各种框架各种设计模式前端都用上了,什么AngularJS,Angular, ...
随机推荐
- 【原创】大叔问题定位分享(16)spark写数据到hive外部表报错ClassCastException: org.apache.hadoop.hive.hbase.HiveHBaseTableOutputFormat cannot be cast to org.apache.hadoop.hive.ql.io.HiveOutputFormat
spark 2.1.1 spark在写数据到hive外部表(底层数据在hbase中)时会报错 Caused by: java.lang.ClassCastException: org.apache.h ...
- 完全卸载删除gitlab
完全卸载删除gitlab 1.停止gitlab gitlab-ctl stop 2.卸载gitlab(注意这里写的是gitlab-ce) rpm -e gitlab-ce 3.查看gitlab进程 p ...
- $a=[1,2,3,4,5]; $b=[a,b,c,d,e]; 转成[[1,a],[2,b],[3,c],[4,d],[5,3]]
$a=[1,2,3,4,5]; $b=[a,b,c,d,e]; 结果 [[1,a],[2,b],[3,c],[4,d],[5,3]] return array_map(function($v1,$v2 ...
- Vue CLI 3+tinymce 5富文本编辑器整合
基于Vue CLI 3脚手架搭建的项目整合tinymce 5富文本编辑器,vue cli 2版本及tinymce 4版本参考:https://blog.csdn.net/liub37/article/ ...
- MySQL入门命令
SQL(Structured Query Language) SQL是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 ...
- select2 api参数的文档
具体参数可以参考一下: 参数 类型 描述 Width 字符串 控制 宽度 样式属性的Select2容器div minimumInputLength int 最小数量的字符 maximumInputLe ...
- python之MySQL MySQLdb 推荐使用姿势,解决中文乱码
0.目录 2.setup(1) 安装步骤,可以顺带安装mysql administrator和mysql query browser(2) 安装完毕,修改 my.ini(3) 重启 mysql 服务: ...
- UVA 10474 - Where is the Marble?--vector
https://vjudge.net/problem/UVA-10474 https://blog.csdn.net/xiyaozhe/article/details/81081344 简单用法 so ...
- Mysql 学习笔记02
14 mysql 的常见函数 数学函数 1 abs() 函数 ,返回绝对值 2 bin() 函数 ,返回数值的二进制数值 3 hex()函数 ,返回数值的十六进制的值 4 floor()函数 ,对小 ...
- javascript事件之调整大小(resize)事件
当浏览器窗口被调整到一个新的高度或宽度时,就会触发resize事件. var EventUtil = { addHandler: function (element, type, handler) { ...