-
Notifications
You must be signed in to change notification settings - Fork 373
HbGitHub
GitHub 是安人集团内部协同、文档管理工具,也是开智学堂课程常用的主题讨论、作业提交工具。如果你初次接触,面对满屏难以理解的按钮,估计有些发怵;甚至查阅官方教程 GitHub Guides、GitHub Help,也依然满头雾水——里头各种操作不明觉厉,更别说对接上述俩场景啊。
别怕,没那么复杂。在那俩场景下,你只需把 GitHub 当成一个特殊的本地同步盘(类似 Dropbox 或坚果云)+ 主题讨论平台(类似论坛、BBS),就能应对大部分常规需求。更多高阶用法,可以先熟悉常用操作后,再按需取用。
一般来说,从初见 GitHub 到爱上 GitHub ,你会经历这三阶段:
- 第一级:存活
- 第二级:感觉良好,愈觉优雅
- 第三级:觉得更好更强更快,如虎添翼难自弃
各级别进阶标准可参考 安人集团协作技能自检清单(需科学上网才可访问),希望这系列攻略能助你更快如鱼得水,跃入三级 ;-)
在动身前,我需要给你一套行囊:
- 使用新工具、接触新机制,不适应甚至痛苦一段时间是正常的。
- 这个时间可能是 1-2 周甚至更久,请做好心理准备和生理准备——规律作息多运动,提升身体尤其大脑机能。
- GitHub 蕴含很多专家级的内隐模式,学习曲线对你来说可能有点陡。但相信我,跨过后你将终身受益,发觉之前硬着头皮走出舒适区真是太明智:P
踏入这个世界,你得先了解一些常用概念,才不至于鸡听鸭讲满脸问号。
来,先熟悉两个你最常用的界面:
-
repository
-
这是 GitHub 里最基础的元素,中文一般叫做「仓库」。 GitHub 是项目生发平台,一般来说,一个仓库就是一个项目资料的基本存储单位。比如你点击 https://github.com/OpenMindClub/tacofancy ,这就是这个项目仓库的首页。项目首页主要元素及作用如下 # 图丑了点凑合着看吧,看不下去你来重整一张嘛~
- 1 GitHub logo: 点击直达 dashboard
- 2 搜索框:可搜索本仓库所有内容,包括改动记录
- 3 仓库全称
- 4 code/issues/pull request/project/wiki 导航栏
- 5 commit 记录:点击即可查看本仓库历次改动记录
- 6 本仓库文件夹
- 7 commit message:点击即可查看对应改动内容
- 8 本仓库最后更新时间
- 9 fork 按钮
-
仓库全称为
账号/仓库名
,比如 OpenMindClub/tacofancy 与 sinker/tacofancy ,虽然仓库名相同都是tacofancy
,但这是两个不同的仓库,OpenMindClub/tacofancy 是OpenMindClub
的仓库,sinker/tacofancy 是sinker
的仓库。 -
你可以创建个人项目,也可以创建团队项目。也就是说,你可以把仓库建在个人账号下,也可以建在团队账号(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:
-
点击左上角个人账号按钮:
-
切换到你想查看的 organization:
-
进入 dashboard 页面:
- 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 世界有啥,是时候来真刀实枪啦。攻略肯定不能只看不练对吧?——请完成下述准备后再翻攻略:
- 你已注册并登录自己的 GitHub 账号
- 你有可访问的仓库,可以是自己新建一个测试仓库(Create A Repo - User Documentation),或 fork OpenMindClub/tacofancy 这个示例仓库来尝试
啊哈,以上都已了然?那系好裤腰带,咱们要冲出舒适区啦——
- 第一级:存活
- 第二级:感觉良好,愈觉优雅
- 第三级:觉得更好更强更快,如虎添翼难自弃
- 180424 闪闪更新图片
- 180420 闪闪增补相关链接和图片
- 180418 闪闪创建
- 开智官网:http://openmindclub.com/
-
开智在招职位
持续更新
- 安装使用开智学堂 App
- GitHub 使用指引
- GitHub 世界基础概念
- 存活级别攻略
- 进阶级别攻略
- 提交&互评作业/笔记
- 配置 GitHub 消息提醒
- 结业项目仓库 wiki 初始化&优雅使用
- 配置 GitBook
- Zotero 使用指引
- MagicAltmetric
- 线下活动指引
- 发起学员互助活动
- 活动摄影操作指南
- 报道写作手册-志愿者
-
各地活动空间清单
欢迎一起增补
- 课程资料
修己以安人。
- 素养
- 技巧
- 规约