Skip to content

HbGitHub

ishanshan edited this page Apr 24, 2018 · 22 revisions

简明 GitHub 练级攻略 | 安人集团

GitHub 是安人集团内部协同、文档管理工具,也是开智学堂课程常用的主题讨论、作业提交工具。如果你初次接触,面对满屏难以理解的按钮,估计有些发怵;甚至查阅官方教程 GitHub GuidesGitHub Help,也依然满头雾水——里头各种操作不明觉厉,更别说对接上述俩场景啊。

别怕,没那么复杂。在那俩场景下,你只需把 GitHub 当成一个特殊的本地同步盘(类似 Dropbox 或坚果云)+ 主题讨论平台(类似论坛、BBS),就能应对大部分常规需求。更多高阶用法,可以先熟悉常用操作后,再按需取用。

一般来说,从初见 GitHub 到爱上 GitHub ,你会经历这三阶段:

  • 第一级:存活
  • 第二级:感觉良好,愈觉优雅
  • 第三级:觉得更好更强更快,如虎添翼难自弃

各级别进阶标准可参考 安人集团协作技能自检清单(需科学上网才可访问),希望这系列攻略能助你更快如鱼得水,跃入三级 ;-)

在动身前,我需要给你一套行囊:

行前忠告

  • 使用新工具、接触新机制,不适应甚至痛苦一段时间是正常的。
  • 这个时间可能是 1-2 周甚至更久,请做好心理准备和生理准备——规律作息多运动,提升身体尤其大脑机能。
  • GitHub 蕴含很多专家级的内隐模式,学习曲线对你来说可能有点陡。但相信我,跨过后你将终身受益,发觉之前硬着头皮走出舒适区真是太明智:P

GitHub 世界的基本概念

踏入这个世界,你得先了解一些常用概念,才不至于鸡听鸭讲满脸问号。

来,先熟悉两个你最常用的界面:

  • repository

    • 这是 GitHub 里最基础的元素,中文一般叫做「仓库」。 GitHub 是项目生发平台,一般来说,一个仓库就是一个项目资料的基本存储单位。比如你点击 https://github.com/OpenMindClub/tacofancy ,这就是这个项目仓库的首页。项目首页主要元素及作用如下 # 图丑了点凑合着看吧,看不下去你来重整一张嘛~

      hbgithub_repo_readme2.png

      • 1 GitHub logo: 点击直达 dashboard
      • 2 搜索框:可搜索本仓库所有内容,包括改动记录
      • 3 仓库全称
      • 4 code/issues/pull request/project/wiki 导航栏
      • 5 commit 记录:点击即可查看本仓库历次改动记录
      • 6 本仓库文件夹
      • 7 commit message:点击即可查看对应改动内容
      • 8 本仓库最后更新时间
      • 9 fork 按钮
    • 仓库全称为 账号/仓库名 ,比如 OpenMindClub/tacofancysinker/tacofancy ,虽然仓库名相同都是 tacofancy ,但这是两个不同的仓库,OpenMindClub/tacofancyOpenMindClub 的仓库,sinker/tacofancysinker 的仓库。

    • 你可以创建个人项目,也可以创建团队项目。也就是说,你可以把仓库建在个人账号下,也可以建在团队账号(organization)下。且这俩账号的仓库可以相互转移,看仓库全称就能判断这个仓库属于谁。

    • 仓库可以设置为 public(公开,所有人都可以查看)或 private(私有,有特定权限才可访问)。私有需要付费。若仓库名字后边有 private 标志,那就是私有库;你把这样的仓库发给别人,别人没有登录或没有访问权限,就会显示 404 。

    • 仓库里还配套了相应项目协同模块,用法建议如下:

      • code: 一般用于存放项目主要成果

        比如公众号仓库,会在此放在编辑的和已发布文案;课程学员仓库,会在此放自己的作业、笔记;课程研发仓库,会在此放编写的卡包等。

        注意:每个仓库的免费存储空间为 100M ,所以幻灯、图片等多媒体资料,建议存放在云盘中而非 code 里。有钱也别把多媒体资料放这里,会阻碍协同成员的从同步速度。

      • wiki: 一般用于存放项目相关规约、指南等辅助资料

        wiki 其实同步到本地也是一个文件夹,和 code 的功能类似。但 wiki 模块右侧有 sidebar ,可以索引资料(包括但不限于本仓库内的资料),便于同伴取用。

        比如公众号仓库 wiki ,会汇总编辑手册、发布规约等常用资料;课程学员仓库 wiki ,会汇总课程表、学习指南等资料;课程研发仓库,则会汇总研发指南、协作教程等资料。

      • issue: 一般用于主题讨论、追踪议题

        界面样式有点类似论坛,最大的好处是议题告一段落后可以关闭(close issue),以便保持主界面清爽。核心用法是持续追踪议题/任务,从发起、推进、解决到迭代等。

        例如你在 GitHub issues 发起了一个主题讨论,大家异步交流探讨。如果问题解决,你及时回复最新进展/共识到这个 issue 下,并关闭此 issue ,形成一个良性闭环。除了探讨疑问,你还可以用 GitHub issues 发起活动征集参与者;汇集资源,分享创意;提交 Bug……

      • project: 相当于看板,一个项目可以建好多张看板,还可以把 issue 引用到看板中

      当然,你也可以根据特定项目需求及各模块的功能细节差异(需科学上网才可访问),自行决定如何使用这些模块。

    • 友情提示:建议所有仓库同步到电脑本地的内容,都放在一个路径下,而非按不同主题放在不同路径。同步到本地的仓库越多,你会越发觉这样处理有多优雅。

  • dashboard

    • 登录个人 GitHub 账号后,点击页面顶部菜单栏最左侧的 GitHub logo,进入 personal dashboard https://github.com/dashboard
    • dashboard 页面是你 GitHub 的枢纽,由此你可以找到所有自己有访问权限的各类资源。比如右侧有你能访问的各类仓库列表。
    • 还可以切换查看你所在 organization 的 dashboard:
      • 点击左上角个人账号按钮:

        hbgithub_account_context_switcher.png

      • 切换到你想查看的 organization:

        hbgithub_account-context-switcher-selected-dotcom.png

      • 进入 dashboard 页面:

        hbgithub_dashboard_org2.png

        • 1 搜索框:搜索当前 organization 下的内容
        • 2 dashboard 名字:说明现在查看的是哪块 dashboard
        • 3 News Feed:当前 organization 或账号下的新动态
        • 4 News Feed/pull requests/issues 导航栏:点击可进入查看这些模块
        • 5 直达当前 organization 主页的入口
        • 6 当前 organization 仓库列表:你可以在此查找该 organization 下你有访问权限的仓库
    • 注意:请一定记住如何进入 dashboard 页面,因为你会经常用到。 # 记不住就直接添加到收藏夹吧!

再看一些高频操作:

  • fork: 可以一键创建项目副本。比如你看到某个项目特别好,但还想改改,就可以 fork 一份到自己的账号下,继续修改。改完后还可以申请合并到主库里。

    对了,fork 到自己账号后生成的仓库,我们一般称为 child repo ;被 fork 的仓库,称为 parent repo。

  • clone: 把云端仓库同步到本地。

  • commit: 标注说明你轮操作改动了什么。

  • push: 把本地的改动同步到云端仓库。

  • pull: 把云端的改动同步到本地仓库。

  • pull request: 修改了某个仓库后,跟仓库主人申请把改动合并到该仓库中。

  • merge: 合并不同版本的内容为一个可用版本。

以上概念更官方的解释,及更多 GitHub 概念,可见 GitHub Glossary - User Documentation。不过更建议你使用 GitHub 至少一周,对 GitHub 有更多直观的感知后别再查看哦。

练级准备

大致了解 GitHub 世界有啥,是时候来真刀实枪啦。攻略肯定不能只看不练对吧?——请完成下述准备后再翻攻略:

  1. 你已注册并登录自己的 GitHub 账号
  2. 你有可访问的仓库,可以是自己新建一个测试仓库(Create A Repo - User Documentation),或 fork OpenMindClub/tacofancy 这个示例仓库来尝试

啊哈,以上都已了然?那系好裤腰带,咱们要冲出舒适区啦——

  • 第一级:存活
  • 第二级:感觉良好,愈觉优雅
  • 第三级:觉得更好更强更快,如虎添翼难自弃

CHANGELOG

  • 180424 闪闪更新图片
  • 180420 闪闪增补相关链接和图片
  • 180418 闪闪创建
Clone this wiki locally