一、什么是Github

Github是全球最大的社交编程及代码托管网站(https://github.com/)。

Github可以托管各种git库,并提供一个web界面(用户名.github.io/仓库名)

二、Github和Git是什么关系

Git是版本控制软件

Github是项目代码托管的平台,借助git来管理项目代码

1、 使用Github

目的:借助github托管项目代码

2、基本概念

a、仓库(Repository)

仓库的意思,即你的项目,你想在 GitHub 上开源一个项目,那就必须要新建一个 Repository ,如果你开源的项目多了,你就拥有了多个 Repositories 。

仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库

b、收藏(Star)

仓库主页star按钮,意思为收藏项目的人数,收藏项目,方便下次查看,在 GitHub 上如果你有一个项目获得100个star都算很不容易了!

【如何收藏】

操作:打开对应项目主页,点击右上角  star 按钮即可收藏

情景:张三无意访问到李四的开源项目感觉不错并进行收藏

【如何查看自己得收藏】

c、复制克隆项目(Fork)

这个不好翻译,如果实在要翻译我把他翻译成分叉,什么意思呢?你开源了一个项目,别人想在你这个项目的基础上做些改进,然后应用到自己的项目中,这个时候他就可以 Fork 你的项目(打开项目主页点击右上角的fork按钮即可),然后他的 GitHub 主页上就多了一个项目,只不过这个项目是基于你的项目基础(本质上是在原有项目的基础上新建了一个分支),他就可以随心所欲的去改进,但是丝毫不会影响原有项目的代码与结构。

注意:该fork的项目时独立存在的

d、发起请求(Pull Request)

发起请求,这个其实是基于 Fork 的,还是上面那个例子,如果别人在你基础上做了改进,后来觉得改进的很不错,应该要把这些改进让更多的人收益,于是就想把自己的改进合并到原有项目里,这个时候他就可以发起一个 Pull Request(简称PR) ,原有项目创建人,也就是你,就可以收到这个请求,这个时候你会仔细review他的代码,并且测试觉得OK了,就会接受他的PR,这个时候他做的改进原有项目就会拥有了。

e、关注(Watch)

这个也好理解就是观察,如果你 Watch 了某个项目,那么以后只要这个项目有任何更新,你都会第一时间收到关于这个项目的通知提醒。

f、事务卡片(Issue)

发现代码BUG,但是目前没有成型代码,需要讨论时用; 问题的意思,举个例子,就是你开源了一个项目,别人发现你的项目中有bug,或者哪些地方做的不够好,他就可以给你提个 Issue ,即问题,提的问题多了,也就是 Issues ,然后你看到了这些问题就可以去逐个修复,修复ok了就可以一个个的 Close 掉。

g、Github主页

账号创建成功或点击网址导航栏github图标都可进入github主页:该页左侧主要显示用户动态以及关注用户或关注仓库的动态;右侧显示所有的git库

h、仓库主页

仓库主页主要显示项目的信息,如:项目代码,版本,收藏/关注/fork情况等

i、个人主页

个人信息:头像,个人简介,关注我的人,我关注的人,我关注的git库,我的开源项目,我贡献的开源项目等信息

3、注册github账号

官方网址:https://github.com

注意:

a、因为github在国外服务器所以访问较慢或者无法访问,需要FQ(Shadowsocks)

b、私有仓库只能自己或者指定的朋友才有权限操作(私有仓库是收费的)

c、新注册的用户必须验证邮箱后才可以创建git库仓库()

4、创建仓库/创建新项目

说明:一个git库(仓库)对应一个开源项目。通过git管理git库

a、创建仓库

1)点击【Start a project】创建一个仓库

2)问题:点击【Start a project】创建一个仓库,后出现该页面

2)原因:未验证邮箱,点击下图框框中的链接进行验证

3)点击【resend】发送邮件验证邮箱

4)点击【verify email address】验证邮箱

说明:验证成功后会自动跳转github主页,重新点击【Start a project】即可创建仓库

5) 验证邮箱后,点击【Start a project】进入下图界面

b、仓库主页说明

注意:qq邮箱需要设置白名单才可以收到邮件

设置QQ邮箱白名单

1、打开QQ邮箱、点击【设置】

2、点击【反垃圾】

3、点击【设置域名白名单】

4、在新页面的input框中输入【github.com】添加即可

5、仓库管理

a、新建文件:仓库主页,点击【create new file】创建仓库文件

b、编辑文件:仓库主页,点击【需要修改的文件】进入文件详情页

c、删除文件

d、被删除文件如何查看信息

答案:点击commits按钮查看

e、上传文件

f、搜索仓库文件:快捷键(t)

6、下载/检出项目

7、Github Issues

作用:发现代码BUG,但是目前没有成型代码,需要讨论时用;或者使用开源项目出现问题时使用

情景:张三发现李四开源git库,则发提交了一个issue;李四隔天登录在github主页看到通知并和张三交流,最后关闭issue

三、基本概念(实战操作)

1、Github主页

2、个人主页

四、开源项目贡献流程

1、新建Issue

提交使用问题或者建议或者想法

2、Pull Request

步骤:

a、 fork项目

b、 修改自己仓库的项目代码

c、 新建 pull request

d、 等待作者操作审核

五、下面就是惊喜:Github  Pages搭建网站

1、个人站点

访问:https://用户名.github.io

搭建步骤:

a、创建个人站点-》新建仓库(仓库名必须是【用户名.github.io】)

b、在仓库下新建index.html的文件即可

注意:a、Github Page仅支持静态页面

   b、仓库里面只能是.html文件

   c、个人主页也可以设置主题

2、Project Pages 项目站点

访问:https://用户名.github.io/仓库名

原理:gh-pages 用于构建和发布

搭建步骤

a、进入项目主页,点击settings

b、在settings页面,点击【Choose a theme 】来自动生成主题页面

c、新建站点基础信息设置

d、选择主题

e、生成网页(publish page)

学会git玩转github,结尾有惊喜!有惊喜!有惊喜!的更多相关文章

  1. 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...

  2. 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 ...

  3. 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 ...

  4. Git的使用 -- 用git玩翻github,结尾有惊喜!有惊喜!有惊喜!林妙妙看了说:牛呲呼啦带闪电 (三)(超详解)

    简介 上一篇主要讲解的是Git安装及配置,这一篇就详细的从无到有的来用Git玩翻github. 一.什么是Github Github是全球最大的社交编程及代码托管网站(https://github.c ...

  5. 学会Git玩转Github

    1. 了解Git和Github 1.1 什么是Git Git是一个免费.开源的版本控制软件 1.2 什么是版本控制系统 版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况得系统. ...

  6. 学会Git玩转GitHub全

    我这个笔记是利用HTML5来写的,所以我现附上代码以及并上照片:  当下@future 2019/4/29 19:55:33 <!DOCTYPE html><html> < ...

  7. 学会Git玩转Github笔记(二)——Git使用

    一.Git基本工作流程 Git工作区域 向仓库中添加文件流程 二. Git初始化及仓库创建和操作 基本信息设置 . 设置用户名 git config --global user.name 'itcas ...

  8. 学会Git玩转Github笔记(一)——Github基本概念 & 仓库管理

    一.github基本概念 使用目的:借助GitHub托管项目代码 1.仓库(Respository) 2.收藏(Star) 3.复制克隆项目(Fork) :分叉—你开源了一个项目,别人想在你这个项目基 ...

  9. 1小时学会Git玩转GitHub

    版权声明:原创不易,本文禁止抄袭.转载,侵权必究! 本次教程建议一边阅读一边用电脑实操 目录 一.了解Git和Github 1.1 什么是Git 1.2 什么是版本控制系统 1.3 什么是Github ...

随机推荐

  1. 消息队列RabbitMQ与Spring集成

    1.RabbitMQ简介 RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQP(高级消息队列协议)的标准实现. 官网:http://www.rabbitmq.c ...

  2. struts2.1.6教程十、类型转换

    建立struts2conversion项目,并搭建好struts2的基本开发环境 1.基于Action的直接属性转换 建立t.jsp页面,内容如下: <s:form action="p ...

  3. java虚拟机学习-JVM调优总结-典型配置举例(10)

    以下配置主要针对分代垃圾回收算法而言. 堆大小设置 年轻代的设置很关键 JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理 ...

  4. Spring Boot 学习(2)

    文 by / 林本托 Tips 做一个终身学习的人. 源代码:github下的/code01/ch2. 配置 Web 应用程序 在上一章中,我们学习了如何创建一个基本的应用程序模板,并添加了一些基本功 ...

  5. 极光开发者沙龙 之 移动应用性能优化实践 【一】旧酒新瓶——换个角度提升 App 性能与质量

    旧酒新瓶--换个角度提升 App 性能与质量 主讲人:高亮亮 ---   饿了么移动技术部高级iOS工程师,负责饿了么商家版iOS APP开发,对架构和系统底层有深入研究,擅长移动性能分析,troub ...

  6. 使用ConcurrentDictionary替代Hashtable对多线程的对象缓存处理

    在之前一段时间里面,我的基类多数使用lock和Hashtable组合实现多线程内缓存的冲突处理,不过有时候使用这两个搭配并不尽如人意,偶尔还是出现了集合已经加入的异常,对代码做多方的处理后依然如故,最 ...

  7. 前端向后台的华丽转身 — PHP入门篇

    三个月就这么悄悄溜走了,本K对于前端虽然有了一定的认识,但对一些方面还是处于一种比较萌币的状态,就在这种萌币状态下,本K又跟着大神浩开始了后台语言-PHP语言的学习.PHP的学习对于学过其他语言的人来 ...

  8. 一天搞定CSS:盒模型content、padding、border、margin--06

    1.盒模型 网页设计中常听的属性名:内容(content).填充(padding).边框(border).边界(margin), CSS盒子模式都具备这些属性. 这些属性我们可以用日常生活中的常见事物 ...

  9. RedHat6.2 x86手动配置LNMP环境

    因为公司要求用RedHat配,顺便让我练习一下Linux里面的操作什么的. 折腾来折腾去终于搞好了,其实也没那么难嘛.但是也要记录一下. 首先,是在服务器里面用VMware搭建的RedHat6.2 x ...

  10. java控件之树形结构JTree

    import javax.swing.JFrame; import javax.swing.JTree; import javax.swing.event.TreeSelectionEvent; im ...