简介
上一篇主要讲解的是 Git 安装及配置, 这一篇就详细的从无到有的来用 Git 玩翻 GitHub.
一, 什么是 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 的项目时独立存在的
比如: 张三 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(***)
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)
六, 小结
Clone 和 Fork 的区别:
fork(派生): 将别人的仓库复制一份到自己的仓库.
clone(克隆): 将仓库克隆到自己本地电脑中.
Fork 的主要应用场景:
1. 在 A 的仓库中 fork 项目 B (此时我们自己的 GitHub 就有一个一模一样的仓库 B, 但是 URL 不同)
2. 将我们修改的代码 push 到自己 GitHub 中的仓库 B 中
3.pull request , 主人就会收到请求, 并决定要不要接受你的代码
来源: https://www.cnblogs.com/du-hong/p/11087181.html