由于使用Github一段时间了,但是除了发发博客感觉啥也不会,准备好好研究一下。

Git和Github

Git是一个软件/工具/系统

Github是一个网站/平台(使用Git)

Git

Git是一个分布式版本控制器,像数据库会记录所有对项目文件的更改(比如对一个文件加了三段文字,删了一段话,改了几个词都能保存)

功能:使用版本控制可以协同合作(多人编辑文件或者代码不出错),版本存储(之前改动的每一版都会)文件备份(本地和服务器都有完整的历史版本,如果服务器坏了本地还有一份完整的历史记录)

Github

Github是通过Git进行版本控制的软件代码托管服务平台,可以理解成放代码的place,往上放代码时用Git进行版本控制。也就是Github使用Git完成版本控制

功能

代码托管:可以把它当作一个网盘放代码,同时使用 Git 功能记录你的代码历史。当然除代码外还能放其他文件。

学习优秀的开源项目:学习别人优秀的源码,写代码之前看别人是怎么写的(比如写作业的时候参考参考),看论文也可以上 GitHub 找源代码,还能找一些开源的软件,插件用。

多人协作:多个人要一起写个程序,一起写本书,一起翻译一篇文章等,用 GitHub 可以管理项目保证你们的文件同步,写好后提交合并成一个完整的项目。

搭建博客:基于 GitHub Pages 搭建属于你的博客,你可以随心所欲的定制自己的样式,这是一个属于你的空间。

社交:就像微博、知乎一样,在这个网站你可以关注(following)别人,也可以有自己的粉丝(followers),看到好的开源项目可以给他点赞(star),你有啥想法还可以给这个项目改进改进(fork)。

个人简历:如果你的 GitHub 上有不错的项目,或者你改进过别人的项目,这些都能反映到你的账号上。GitHub 一定程度可以反应到你的能力,如果你的项目点赞多(star),还有很多粉丝关注(followers),你就像个大 V 一样,这就是你的另一份简历。

写作:Gitbook 可以写电子书。

当然还有

Github使用

注册和登录是进门第一步,这个相对简单就pass了

界面

主界面

左边部分是我自己的仓库

(Repository:翻译为仓库,也是你的项目。你可以理解成一个大的文件夹,或者笔记本。一个项目对应一个 Repository。)

中间是关注的人的动态

右边是自己的部分和搜索框

还有的四个按钮:

  • Pull requests:你想参与别人的项目,或想改进别人的项目,改进后需要提交申请,用 pull requests。
  • Issues:你发现别人项目的 bug,或者有什么问题,怎么和作者交流呢?提一个 Issue ;别人也可以给你的项目提 Issue 反馈问题。Issue 追踪各种想法,增强功能,任务,bug,有点儿像评论功能。
  • Marketplace:应用商店,里面有免费/收费的开发工具。
  • Explore:你可以理解成软件里的发现页,点进去推荐一些和你相关的话题、项目、新闻等

个人界面

  • Projects:它可不是项目,上面说了 Repository 是项目。它可以翻译为项目板,是 project-boards 的简写, 通过项目板可以灵活地创建适合需求的自定义工作流程,说白了是管理项目流程的,一般不常用。
  • Star:就是点赞功能,这里用作动词,它叫 star 是因为点赞图标就是星星⭐。不过这个点赞比较像知乎里的点赞功能,它会记录在你的动态里。由于 GitHub 没有收藏功能,所以 star 可以用来收藏。
  • Follow:就是关注的意思,点击 Followers 看看谁关注了他,点击 Following 看看他关注了谁(大神关注的一般也是大神👍)

项目界面

根据catOneTwo博客的例子讲解

  • Watch:关注,也就是你既可以关注(follow)一个人,也可以关注(watch)一个项目,你关注内容的动态都会显示在主页面。
  • Fork:直译是刀叉,它是指将 GitHub 的某个特定仓库(所有文件)原封不动地复制到自己的账户下。比如你想改进这个项目,加点儿自己的东西,就可以复制一下整个仓库再修改,但是不影响原作者的仓库,你点击 Fork 就能复制。

README.md类似于产品说明书,便于别人了解文章内容。