二、Git、Github与Gitbook


1.Git、Github

Git是一个版本控制工具,Github是面向开源及私有项目软件的托管平台。

• 你出了一版方案A,在大家讨论后,你改到B,结果再讨论,大家觉得还是不如用A,这时发现A没有另存,还得再改回去!在GitHub中就不用担心,它会记录你提交的每个版本,并把这些都放在一个仓库(Repository)里,而每一次提交改变就是 Commit,你可以随时回退到任意一个版本。 • 此外你还很可能遇到方案衍生的情况,在方案A的基础上,改出了一种方案B,又改出了一种方案C,可能还分别衍生出B1、B2及C1、C2,在GitHub里有分支(Branches)可以记录这种方案的分化过程。+

• 后来你觉得B1和C2方案中都有可取的地方,把它们融合一下就可以输出终稿了,Git里当然也支持这种分支合并(Merged)。

2.Github中的协同合作机制

picture2

• 在稍大的团队中,可能需要几个设计师合作完成一个方案,怎么样统一进度呢,一种就是大家每天把文件拷在一起,这需要经常浪费时间去同步文件,显然很不方便。另一种是每个人电脑里都留一份,需要时就和云端服务器同步,Git就是采用这样的所谓分布式系统。好处是更安全,也更便捷。 • 那么问题也就来了,如果大家都改同一个东西,万一冲突了怎么办?不用担心,Git会帮你对比并告诉你哪里有冲突了,你可以逐个对冲突的地方做出抉择。此外,前面不是讲到可以衍生出分支(Branches)么,在大家各自推进方案的时候,分别把内容放在不同的分支里,就不会相互干扰了。

3.Github与Gitbook之间的关系

相似之处: 1.二者都基于Git开发,因此都有版本控制功能

2.都可以为仓库添加Collaborators+

基于以上原因:对于一个Gitbook项目,如果不需要Collaborators之外的人员贡献,且协作成员均熟悉Gitbook并遵守编写规则,此时不需要借助Github

不同之处: 1.GitBook的功能侧重于图书编撰与出版,版本控制的功能有限

2.GitHub是专业的代码托管平台具有完善的版本控制功能,如pull request,Issue等功能

基于以上原因:对于一个GitBook项目,如果想要接受大众的贡献,或者项目组成员太多且对GitBook和编写规则不熟,则应当借助GitHub的pull request功能实现对贡献代码的管控

results matching ""

    No results matching ""