目录

  • 为什么要使用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 入门(“趣考网络”学习第一步)的更多相关文章

  1. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  2. Qt 学习第一步 做计划和确定目标

    接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edi ...

  3. Java学习第一步: Win7配置JDK环境

    转摘"专注JavaWeb开发":http://www.javaweb1024.com/java/Javajichu/2015/03/02/353.html 下载JDK并安装到本机  ...

  4. Struts2 学习第一步准备工作

    第一步:安装下载MyEclispe10 对于MyEclispe的下载安装就不再详述了. 第二步:下载Struts-2.3.15 Struts-2.3.15下载地址: http://struts.apa ...

  5. java学习第一步,使用IntelliJ IDEA编写自己的第一个java程序

    首先下载java的jdk,然后说一下IDEA的配置 IntelliJ IDEA目前公认的最好的java开发工具,不过一般的学校的教学还是使用eclipse来进行java的开发.所以老师一般只会教你如何 ...

  6. caffe windows 学习第一步:编译和安装(vs2012+win 64)

    没有GPU,没有linux, 只好装caffe的windows版本了. 我的系统是win10(64位),vs 2012版本,其它什么都没有装,因此会需要一切的依赖库. 其实操作系统只要是64位就行了, ...

  7. GitHub注册失败,卡在第一步

    同事说他无法注册GitHub,我一开始以为GitHub又无法登录进去,我就登录了自己的GitHub账号,没有问题,可以登录啊,见第一个标签页.同一局域网,不可能我能登录,你无法完成注册啊.于是,我就在 ...

  8. android 学习第一步

    今天是2015年7月24号,今年下半年的主要学习方向是android,学习的目标是做出3个或以上的有实用价值的app.

  9. Angular学习第一步

    前端开发越来越流行了,作为后端开发人员,也开始需要学习前端了.随着前端技术的发展,前端技术也越来越复杂,复杂程度不亚于后端,各种框架各种设计模式前端都用上了,什么AngularJS,Angular, ...

随机推荐

  1. pandas 中的模糊匹配

  2. Java 模拟http请求

    package ln; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRea ...

  3. C++面试

    C++ Primer.STL源码剖析.设计模式 C++ 析构函数可以是虚函数吗?为什么 构造函数可以是虚函数吗?为什么 如何防止类被继承 手写String类(实现类里面常用函) 什么是野指针如何避免这 ...

  4. Wine中中文显示为错误的解决方案

    First u must download wqy-microhei.ttc font online (https://github.com/anthonyfok/fonts-wqy-microhei ...

  5. P2921 [USACO08DEC]在农场万圣节Trick or Treat on the Farm 记忆化搜索dfs

    题目描述 每年,在威斯康星州,奶牛们都会穿上衣服,收集农夫约翰在N(1<=N<=100,000)个牛棚隔间中留下的糖果,以此来庆祝美国秋天的万圣节. 由于牛棚不太大,FJ通过指定奶牛必须遵 ...

  6. PSO:利用PSO算法优化二元函数,寻找最优个体适应度—Jason niu

    figure [x,y] = meshgrid(-5:0.1:5,-5:0.1:5); z = x.^2 + y.^2 - 10*cos(2*pi*x) - 10*cos(2*pi*y) + 20; ...

  7. commanderJs编写命令行工具(cli)

    前言: 最近需要做一个内部的node cli来独立构建流程,对整个命令行工具实现流程有了大致了解,下面来解释一下如何实现一个cli,和如何使用 commander 库.   新手误区: 在开始实现之前 ...

  8. webpack打包后该如何访问项目?

    一.问题描述 开发环境,页面浏览都OK,产出文件后,直接打开产出目录的index.html,页面空白. 二.预期结果 能正常看到页面. 三.问题分析 你可能会在编译的最后看到如下一句话: Tip: b ...

  9. JAVA基础复习与总结<二>构造方法_static关键字_final关键字

    构造方法详解 构造器也叫做构造方法(constructor),用于对象的初始化. class Person2 { String name; int age; public Person2(String ...

  10. 【Codeforces】【网络流】【线段树】【扫描线】Oleg and chess (CodeForces - 793G)

    题意: 给定一个n*n的矩阵,一个格子上可以放一个车.其中有q个子矩阵,且q个子矩阵互不相交或者是重叠(但边界可以衔接).这q个子矩阵所覆盖的地方都是不能够放车的.车可以越过子矩阵覆盖的地方进行攻击( ...