和许多小白一样,我也是一个见到大量文字和图片就很难受的人 ,下面这篇 GitHub 教程,结合我自己的理解,用通俗易懂的形式述说,目的就是讲明白。
下面,和我一起开始学习吧 !
原博客地址:
文章目录
1. Git 和 GitHub
1.1 Git
1.2 GitHub
2. 加入 GitHub
2.1 注册
2.1 登录
2.3 界面
2.3.1 主界面
2.3.2 个人界面
2.3.3 项目界面
2.4 名称1. Git 和 GitHub导读:我们先来了解一下 Git 和 Github 是哪些,有哪些功能
先说推论,Git 和 GitHub 是两个东西,Git 是一个软件/工具/系统,GitHub 是一个网站/平台,GitHub 这个网站使用了 Git 这个工具。
1.1 Git
Git是一个分布式版本控制系统。
版本控制系统(version control system)像个数据库,它会记录所有对项目文件的修改(比如一个文件,前天加了三段文字,昨天删了一句话,今天改了几个词,这三个版本历史都能保存出来)。 版本控制系统除了可以应用于软件源代码的文本文件,而且可以对任何类型的文件进行版本控制。
使用版本控制系统可以协同合作(多人编辑文件或代码而不出错),版本储存(你改动的每一版本都保存出来,如果改错可以回到之前的版本,如果想加上删掉的内容也可以返回去找,也可以对比现今和之前的版本,看改了哪些),文件备份(服务器和本地都有完整的历史版本,如果服务器坏了,本地还有一份完整的历史记录)。
总之, Git 可以避免文件遗失,改错,多人合作不同步造成的后果 。
1.2 GitHub
GitHub 是通过 Git 进行版本控制的软件源代码托管服务平台,可以理解成放代码的地方,但往上放代码时用 Git 进行了版本控制。也就是 GitHub 使用了 Git 完成版本控制,下面来瞧瞧 GitHub 有什么有用的功能!
代码托管:可以单纯地把它当作一个云盘放你的代码,同时使用 Git 功能记录你的代码历史。当然除代码外就能放其他文件。
学习优秀的开源项目:学习他人优秀的源码,写代码之前看他人是如何写的(比如写作业的时侯参考参考),看论文也可以上 GitHub 找源代码,还能找一些开源的软件,插件用。
当资料库:可以查资料,GitHub 上有总结好的笔试宝典,入门手册,技术剖析,论文合辑,课程资料等。这些博客、公众号上有的内容 GitHub 上也有,还可能更全。
多人协作:多个人要一起写个程序,一起写本书,一起翻译一篇文章等,用 GitHub 可以管理项目保证大家的文件同步,写好后递交合并成一个完整的项目。
搭建博客:基于 GitHub Pages 搭建属于你的博客,你可以随心所欲的订制自己的款式,这是一个属于你的空间。
社交:就像微博、知乎一样,在这个网站你可以关注(following)别人,也可以有自己的粉丝(followers),看到好的开源项目可以给他点赞(star),你有啥看法还可以给这个项目改进改进(fork)。
个人简历:如果你的 GitHub 上有不错的项目,或者你改进过他人的项目,这些都能反映到你的帐号上。GitHub 一定程度可以反反映你的能力,如果你的项目点赞多(star),还有好多粉丝关注(followers),你犹如个大 V 一样,这就是你的另一份简历。
写作:Gitbook 可以写电子书。
GitHub 能做的还远不止这种,等待你的探求发觉!
另外,GitHub 不用翻墙,有网才能打开,可能比国外网站反应慢些,这是正常现象;虽然网站都是英文,但模块不是好多,跟着下边的教程才能学会,用几次都会了;网站有很多中国用户,所以你可以搜到好多英文资源,不用害怕语言问题 ~
总结:无论你是不是程序员,你都可以用 GitHub。你可以把它当个云盘存包括代码的文件,可以和团队一起做个项目(文件啥的就不用保存一堆迭代版本啦),可以找资源(里面有很多宝藏资源),可以建个博客,也可以像在微博、知乎、博客一样,分享你的东西。2. 加入 GitHub导读:注册个帐号,看看网站长啥样吧2.1 注册
打开这个网址 github.com/,如果没有登录的话,就会看见下边的主界面。
首先,你没有帐号也能搜索(游客模式),Sign in 用来登录,Sign up 用来注册帐号。
现在还没帐号,可以直接在前面的页面注册,也可以点击 Sign up 到下边这个页面(其实注册内容都一样,注册网址:github.com/join?source=login)。
输入里面的信息后,点击页面下边的 Create account 即可。
这几年的注册界面有变化,如果创建帐号后,让你选择帐户类型(pick the plan 或者 choose your plan),你就选择免费(free),公共(public)的那种。
如果须要验证邮箱(verify your email address),就打开刚才写的邮箱,打开收到的电邮,点击 verify email address 即可。
如果注册有困难,可以瞧瞧本年的图文教程。
注册成功你会步入 GitHub 主页面,我们第 2.3 讲。
2.1 登录
当你有帐号后,你就可以登录啦。
登陆是点击里面任意页面的 Sign in 按钮,进入下边这个界面(登录网址:github.com/login)。
输入用户名或邮箱,密码,点击 Sign in 或者回车即可。
登录成功你也会步入 GitHub 主页面。
2.3 界面2.3.1 主界面
登录状态下,网站主界面(网址:github.com/)如下:
首先看最里面黄色工具条。
最右边是一个 GitHub 的 logo,点它就返回如今这个主界面。
最左边是和你个人有关的东西(个人,新建,消息),这个和用过的任何软件一类比,就晓得功能了。
左边搜索框,和搜索引擎一样拿来搜索(搜源码,搜资料)。
中间的四个按键:
再来瞧瞧下边的一大块。
左边是你的项目/Repository 。
中间是你关注的人的动态,比如他给他人点赞,他又建了一个项目。
右边类似于推荐页,网站按照你的喜好推荐一些相关项目。
2.3.2 个人界面
刚刚说了右上角那种头像就是个人 。
点一下头像,就会弹出一个小页面,点击 Settings 可以修改你的资料,Your XXX 都是你创建的一些东西(这里把点赞 star 也理解成你创建的),点击 Your profile 就可以步入你的主页。
由于个人主页面的分布都一样,我的界面又没啥东西 ,我就用 Linux 之父的界面做演示了。
可以看出,在个人界面中,可以看见当前这个人的信息,类似于微博知乎的个人界面。我们自己的个人界面也长这样,不过刚注册,下面的记录一片空白。
看他的粉丝数,就晓得这是个大v,这里最能彰显 GitHub 的社交属性。
这里又涉及到一些专用词。
2.3.3 项目界面
下面我们瞧瞧项目界面。
我们使用 GitHub ,无论储存东西,还是查资料,主要都是看自己或他人的项目/仓库,所以这个界面一定要熟悉。
你可以通过搜索项目、点击他人的界面、推荐页面打开一个项目。
我们以 Python 为例介绍界面,你可以在搜索框输入 Python 搜索,选择第一个项目,看点赞数就晓得它是最欢迎的一个。
点进去就是项目/仓库界面啦,我们认识一下主要功能
首先最前面一条我们可以看见这个库房的信息点赞关注网站,像关注点赞都是按键,点击可以看具体的人。
这里涉及到两个新词语。
下面一条是标签页,比如默认的一个标签页 Code 就是展示代码的页面;如果你想看他人提的问题就点击 Issues 页,也许你遇见的问题他人提过但是解决了;有的人想参与这个项目,他改好后就向作者发起了 Pull Requests,希望作者接受他的改进,点进去可以看谁递交过什么样的改进点赞关注网站,作者是否采纳。
下面这个主要部份就是库房里的东西了,你可以听到就是一个个文件夹或文件,里面可能是代码文件,也可能是其他文档,图片哪些的。点击可以看,你也可以点击 Clone or downloads 下载到本地,具体学习。
滑到最下边,可以看见一个叫 README.md 的一段文字,仔细看,它就是库房里的一个文件,只不过展示下来了。它如同产品说明书,或者是一个介绍页,告诉你这个库房的有关信息,让你对库房有了简单的了解。
以后你要建个库房,为了便捷他人了解,也要写这样的文件。
2.4 名称
这里再总结一下 GitHub 的基本名称,都是里面提及的,光看字面意思不好理解,总结一下便捷查询。
Pull Request:你想参与他人的项目,或想改进他人的项目,改进后须要递交申请,用 pull requests。
Repository:翻译为库房,也是你的项目。你可以理解成一个大的文件夹,或者电脑。一个项目对应一个 Repository。
Issue:Issue 追踪各类看法,增强功能,任务,bug,有点儿像评论留言功能。
Star:就是给项目点赞
Fork:将 GitHub的某个特定库房(所有文件)原封不动地复制到自己的帐户下(但不会与原库房相同)。以此实现分散式版本管理
Follow:关注人,关注后主页有他的动态
Watch:关注项目,关注后主页有项目的动态
Gist:上面没有提及,但是主界面点击头像可以看见 Your Gist。如果你没有一个项目,只是单纯地想分享一些代码片断,就可以写 Gist。
README.md:每当创建项目、初始化时,都会帮你手动生成 README.md 文件并显示在库房首页。一般都是使用 Markdown 语法(准确来说应当是GitHub Flavored Markdown(GFM)语法)来描述项目的概要、使用流程、许可合同等。
总结:这一部分我们学会了注册登入,认识了主要界面,知道了如何查找须要的资料,相信到这儿,你已然可以认识到它的搜索功能了。