在《零基础,一篇文章,带你了解GitHub是什么》一文中,我大概介绍了一下GItHub一些常见的应用场景。今天将从零开始,教大家如何创建自己的gitHub Repo, 以及常见的Git 操作。
涉及内容课程内容:
- 注册GitHub;
- 创建GitHub Repo,克隆远程分支到本地,创建并切换新分支;
- 上传本地文件到远程GitHub Repo;
- 修改本地文件,提交修改到远程GitHub Repo;
- 发起Pull Request, 合并功能分支到主分支上
演示环境:
Mac OSX 自带的Git Tools, 此文只演示通过git Command的方式来管理Git。
讲解注册GitHub
浏览器进入GItHub官网(自行百度),选择注册,进入注册界面,按照要求填写注册信息,如图,
正确填写可用邮箱,注册流程会向邮箱发送验证码,进入邮箱,获取验证码,点击激活,即完成GitHub的注册过程,牢记用户名和密码,作为以后登录GitHub的凭证。
注册成功后,即可选择登录GitHub,进入你的GitHub主页
登录界面
登陆后界面
创建GitHub Repo,克隆远程分支到本地,创建并切换新分支
点击"Start a project" 创建远程Git Repo。 Owner是你的用户名,填写一个Repo name,你可以选择创建公开(public)或者私有(private)的代码库。也可以添加README文件,README一般用来保存描述该Repo内工程的属性以及使用说明,帮助其他人了解和使用你的工程。细心的朋友还会看到下面默认添加了.gitingore文件和license文件,前者是一个文本文件,可以保存字符串并且支持正则,作用是符合文件中字符串匹配条件的文件,在从本地提交到远程repo时,被自动忽略,不会上传到repo内,这个功能其实很有用,也很常用,例如一些程序在编译期间会产生很多中间文件,这些文件有些占用空间比较大,对代码本身也没有实际作用,所以在向远程repo提交时,这些文件应该忽略不被提交。至于license文件,主要是针对一些授权的内容,例如你想将自己的代码开源,那么就要否和一些开源规则,这时需要选择对应的license,来规范和声明你的代码用途。填写完相关的信息后,就可以点击“create repository”来生成你的第一个repo了。
如上图,就是你创建的repo,master默认是主分支,点击右侧Clone or Download按钮,出现该Repo的URL,拷贝URL,然后打开Mac上的Terminal,(如果是windows系统,需要单独安装git客户端,安装也非常简单,自行百度即可)输入命令
#该命令会把远程repo可控到本地,默认的也是主分支(master 分支)git clone https://github.com/your_git_login_name/MyFirstRepo.git#进入到MyFirstRepo文件夹,执行如下命令,从当前master分支创建新分支“my_test_branch"git branch my_test_branch#切换到my_test_branchgit checkout my_test_branch
执行以上命令后,远程repo就已经克隆到本地而且并创建了新的分支,文件结构如下,里面只有一个默认生成的README文件
上传本地文件到远程GitHub Repo
我添加一个文本文件"test.js", 文件中写了一行文本“First Commit”,将文件放到MyFirstRepo文件夹中,并在terminal中执行
#Mac下的git自带gui插件,在Windows上安装git时也可以选择安装这个UI工具,可以更清晰的查看文件更改记录git gui
界面如图:
确认文件正确后,点击test.js文件左侧图标,将文件放到Staged中,填写Commit Message, 然后点击Commit,将更新提交到本地,最后点击push,将本地更改提交到远程repo。
push成功后,我们可以去Web界面检查远程repo,可以看到test.js文件已经被同步到远程repo中。
修改本地文件,提交修改到远程GitHub Repo
修改本地文件“test.js”,添加新的字符串“Second Commit",并重新提交修改到远程repo中。
提交成功后,去远程repo检查修改是否成功。点击Commit标签,我们可以查看左右提交过的历史记录。
可以看到,my_test_branch所有的commit 记录如下
发起Pull Request, 合并功能分支到主分支上
进入Web界面,切换到my_test_branch,点击右侧”New pull request"
创建Pull Request后,可以看到如下界面
如图,master是主分支,my_test_branch是我们修改的分支,多人合作开发时,在Reviewer处可以选择指定其他人作为修改的审核者,在合并到主分支之前,审核者可以帮助检查修改是否正确。最后点击Create pull request按钮,完成Pull request 的创建操作。
如上图,如果创建的Pull request被审核通过,那么就可以点击“merge pull request"按钮,将修改合并到主分支master branch上。
以上就是GitHub作为日常代码版本管理最常用的一些操作,当然随着开发人员的增加,以及代码管理严格的程度,GitHub还有其他非常有用的功能,例如增加merge条件判断,在条件未完成之前,merge操作可以被锁定等等一些更详细的功能。这里就先不详述了,如果有小伙伴有相应的需求,或者有关GitHub一些高级用法的问题,可以在文章后留言,我再一一解答。希望帮助到有需要的小伙伴。
,