GitHub 学习

全世界每时每刻都有开发者在使用 GitHub。

什么是 GitHub

GitHub 为开发者提供 Git 仓库的托管服务,是共享代码的完美场所。GitHub 公司总部位于美国旧金山,有一只章鱼腿+猫头的吉祥物 octocat:

 然而 GitHub 并不止于 Git 仓库的托管服务,还提供了一系列帮助高效、高质编写代码的功能,仓库托管也只是 GitHub 的项目之一,发展路上的一个点而已。

GitHub 与 Git 的区别

此二者是完全不同的。对于 Git 是一种 scm,常用作版本控制器,即可以将代码存入 Git 仓库中,并进行各种代码管理。而 GitHub 则是提供 Git 仓库的一项服务,即公开的 Git 仓库服务器。

所以 GitHub 上的代码全都用 Git 进行管理,对 Git 知识的理解也是熟练使用 GitHub 的关键所在。

GitHub 的几项功能 —— 协作形式变化

1、Pull Request

Pull Request 是指开发者在本地对代码进行修改后,向 GitHub 托管的 Git 仓库请求合并代码的功能。GitHub 的 Pull Request 可以很轻松的查看代码修改前后的差别,并可以对其进行交流以及评论,因此如果请求的更改如果与项目的初衷相违,也可以选择拒绝合并;代码的审查工作变得如此惬意。

2、对特定用户进行评论

任务管理和 BUG 报告可以通过 Issue 面向所有人进行交互。如果想让特定用户看,只需要用"@用户名"格式书写评论,对方便会收到通知(Notifications),然后即可查看 Issue。

此外,还可以使用"@组织名"格式,让属于该组织(Organization)的所有成员都收到通知;输入"@组织名/团队",可以让该组织某团队的所有成员收到通知。这是群发通知的方法。

输入"#编号",会连接到该仓库对应的 Issue 编号。而输入"用户名/仓库名/#编号",则会连接到指定的仓库对应的 Issue 编号。这是自动创建链接的方法。

3、GitHub Flavored Markdown(GFM)

在 GitHub 上,所有输入都可以用 GFM 语法(GitHub 对 Markdown 的扩充)进行描述。相比富文本编辑器编写文档,使用 GFM 语法却可以更快捷,效率很高,而且语法也很简单。它还有一个特别的功能,就是可以添加文字表情。

随着 GitHub 的普及,越来越多的服务也开始兼容 MarkDown 的语法。

能看到、关注其他团队的软件

将感兴趣的仓库添加至 Watch,就可以在 News Feed 查看该仓库的新闻,如:1、将全公司(本团队就不用了)共用的的仓库添加至 Watch 中,便能及时的获取新版本的新功能、BUG 修正的信息。2、将隔壁团队的仓库添加至 Watch,就可以每天查看他们在开发什么。发现有用的功能、库,就可以搬到自己的团队。

 

使用 GitHub 的前期准备

创建 GitHub 账号之后,在本地 Git Bash 中创建 SSH Key,然后在 GitHub 中添加 SSH public Key:

创建 SSH Key:

ssh-keygen -t -C "邮箱"

按照命令提示完成创建后,找到提示中对应的文件夹,其中 id_rsa 是私钥,id_rsa.pub 是公钥。

在 GitHub 中添加公钥:

登录 GitHub 网站,在 Account Settings 中,选择 SSH Keys 菜单添加 SSH Key(现在也可以使用 GPG Keys),其中 Title 是密钥名称,Key 填入 公钥文件中的内容。添加成功之后,邮箱会受到相关提示邮件。

完成添加之后,就能用私钥与 GitHub 认证、通信。执行命令:

ssh -T git@github.com

使用社区功能(GitHub 以人为焦点)

Follow(关注):

关注的用户的活动,将会显示在你的控制面板中。

Watch:

使用 Watch 获取特定仓库的最新开发信息。

新建仓库的选项:Add .gitignore:根据选择的项目、语言等,在初始化时,自动生成 .gitignore 文件(用来描述 Git 仓库中,不需要管理的文件和目录。如系统文件等)。

Clone 已有仓库(ssh-clone-url 可以在 GitHub 网站直接复制):

git clone ssh-clone-url

成功执行完命令,仓库被下载在当前目录中。

git status 命令:查看处于哪个 branch,以及更新状态;untracked 文件(未 committed 到 Git 仓库)。

提交代码到 Git 仓库:

git add 代码文件名
git commit -m "对文件的描述"

git add 命令将文件加入暂存区 stage,git commit 命令再提交。

push 命令,更新 GitHub 的仓库:

git push

这样即在 GitHub 公开了自己代码。上面这些操作都可以在 GitHub 网站,或者其客户端可视化操作。

posted @ 2017-08-30 16:32  不抛弃,不放弃  阅读(228)  评论(0编辑  收藏  举报