基本技能 -- Github 使用指南

399 阅读4分钟

前言

刚到公司实习,参与大项目的开发,需要用到代码管理平台,于是打算先学习大家最常用的 Github 的使用指南,在网上看到这篇文章不错,原文链接,另外参考官方指南。这里做一下学习笔记。

Github 和 Git 的区别:

  • Github 可以理解为代码管理平台,就是我们把代码上传到这个平台上面去,大家可以查看、下载,如果有权限还可以修改。所以对于团队协作开发很有帮助;
  • Git 可以理解为代码管理工具,它和代码管理平台相互配合(代码管理平台不止 Github 一个,还有码云,以及腾讯内部使用的工蜂等等),通过一些指令可以对代码管理平台上的代码进行一系列的操作,如 clone 克隆、pull 拉取、push 推送等等

获取资源

  1. 我们可以在左上角进行资源的搜索,这里以开源框架 OkHttp 举例,可以选择在自己的仓库搜索还是在整个 Github 网站上搜索。这里默认在整个网站搜索

  1. 搜索结果如下:

  1. 点击第一个进入后即可看到整个项目结构及源码。通过这个绿色的按钮,再点击 Download ZIP 可以对资源进行下载

上红框是仓库地址,可以通过 git 工具进行克隆。如果选择 Download ZIP,就是下载资源的压缩包

创建仓库

  1. 在自己的主页中点击 Repositories 右边的绿色的 new 按钮可以创建自己的代码仓库

  1. 输入仓库名和仓库的描述或说明,然后点击 Create repository 进行创建

  1. 这样仓库就创建完成了,只不过现在的仓库是空的,还什么也没有,所以这里它推荐你从其它地方导入代码进来或者推送代码进来。我们可以点击 creating a new file 来创建新文件

  1. 填上文件名,然后随意编写一些文件内容

  1. 完成后将网页拉至底部,填写这次创建文件的说明,然后点 Commit new file

  1. 现在你自己的仓库里就有内容了

团队协作开发

Github 的优势就是让广大人民群众都可以参与到各种开源项目的编写

那么,如何在 Github 上实现团队协作呢? 通过前面的一些操作,我们已经创建了一个仓库,那么我们就以这个仓库为例,进行团队开发。首先你得在这个仓库中加入你的团队成员

1 添加团队成员

  1. 点击 Settings,再点击左侧的 Collaborators,进入协作组页面。然后通过下面的搜索框查找用户,输入用户的用户名或者邮箱地址进行搜索,成功搜索到之后点击 Add collaborator 即可将该用户添加为这个仓库的协作者。这个时候该用户会收到一条通知,只有他同意了才会参与到这个仓库的开发中来

  1. 我们还可以对团队中的成员进行权限的设置,以便更加高效地开发

2. 创建新分支

  1. 点击 master 打开下拉框
  2. 输入新分支的名称
  3. 点击 Create branch 即可创建 master 的分支 new branch

image.png

该新分支的内容与 master 主干的内容是一模一样的

image.png

3. 进行更改和提交

  1. 修改 new branch 分支的 README.md 文件后,会提示 new-branch had recent pushes,这是该分支的推送提示

image.png

  1. 点击 Contribute 合并分支,再点击 Open pull request

image.png

  1. 点击 Create pull request进行合并

image.png

  1. 等待系统检测冲突:

image.png

  1. 没有发生冲突,pull request 已完成

image.png

4. 比较和拉取请求

如果 new branch 分支新增了文件,提交申请后点击 Confirm merge 确认 merge(合并)

image.png

这里可以看到 master 主干成功被修改(多了新文件 test2)

image.png

image.png

参与开源项目

如何去参与一个开源项目,比如人气极高的 bootstrap,这是一个非常强大的 CSS 框架,我们在整个网站中搜索bootstrap,然后进入仓库主页。然后点 Fork,就会在自己的账号下克隆一个 bootstrap 仓库。

然后从自己的账号下克隆,这里就必须要使用 git 工具了,输入 git 指令:

git clone https://github.com/blizzawang/bootstrap.git

注意一定要从自己的账号clone 仓库,这样你才能推送修改,如果从 bootstrap 作者的仓库地址克隆,因为没有权限,你将不能推送修改,除非作者将你列为该仓库的协作者,但显然这是不可能的。

Bootstrap 的官方仓库 twbs/bootstrap、你在 GitHub 上克隆的仓库 my/bootstrap,以及你自己克隆到本地电脑的仓库,他们的关系就像下图显示的那样:

如果你想修复 bootstrap 项目的一个 bug,或者新增一个功能,立刻就可以开始干活,干完后,往自己的仓库 push 推送。

如果你希望 bootstrap 的官方库能接受你的修改,你就可以在 GitHub 上发起一个 pull request。当然,对方是否接受你的 pull request 就不一定了

image.png