GIT or GitHub or GitLab

Hi~

欢迎来到南子君工作室

/*begaining*/

来到新公司也有一个多月啦,最近又用了GitLab,话说我的内心是懵圈的,毕竟以前一直听的都是github,难道是我low逼了嘛???还弱弱的不敢问我们的大牛等等(多年老python他就叫等等),默默的去度娘家溜达了一圈才隐隐的知道Why...然后假装自己很厉害很认真的总结了这片文章

先说一下什么是GIT吧,这年头一个程序员如果不知道GIT是个啥简直low爆了

GIT

那git是个啥?度娘原话是酱紫——Git是一个开源的分布式版本控制系统,用以有效高速的处理从很小到很大的项目版本管理(关于什么是分布式可以百度搜索廖雪峰git博客)。版本控制是一种记录一个或者若干内容变化,以便将来查阅特定版本修订情况的系统。Git简直是程序世界里的后悔药,今天做完一个模块明天产品要改需求,后天傻产品要折回初始版本,哦多剋,肿么办,用了git完全ojbk,直接撤回第一天的版本就好啦,贼好用。

GitHub

Github和GIT是完全不同的两回事,github是在线的基于git的代码托管服务,它是面向开源及私有软件项目的托管平台,因为只支持git作为唯一版本库格式进行托管所以叫做github。github是2008年由Ruby on Rails编写而成的,guthub同时提供付费账户和免费账户,这两种账户都可以创建公共的代码仓库,但是付费账户也可以创建私有的代码仓库,那至于github为什么这么火爆,只能说在这个靠脸吃饭的社会上,github妥妥的已经吃了肉。那作为一个分布式版本控制系统,在git中不存在主库概念,用过SVN的大佬们应该都知道,SVN版本库集中存放在一个中央服务器,这样的话干活时用的都是自己电脑,所以要先从中央服务器取得最新版本,然后开始干活,干完活再把自己的活推送给中央服务器,如果中央服务器出了问题,所有人的工作都不能再继续下去。继续我们的github,github每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。github可以托管各种git库,并提供一个web界面,但和其他的服务不同的是,github的独特在于从另一个项目进行分支的简易性,为一个项目贡献代码非常简单,首先点击项目站点的fork按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的"pull request"机制向项目负责人申请代码合并就ojbk了。

GitLab

GitLab是个啥?很想放个黑人式懵逼的微笑,在进这家公司之前完全么有听过的一个鬼东西,然而,我们公司偏偏用的就是它。那这是个啥?事实上GitLab是一个基于git的项目管理软件,注意它是个软件,而GitHub是一个网站,提供给用户空间创建git仓库,保存用户的一些数据文档或者代码等(又跑题了,强行拎回来)......GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。相比于GitHub,GitLab拥有更多新特性,它可以让开发者团队拥有更多的安全性和灵活性的选择。GitLab拥有GitHub的一切,并且它拥有更多——让团队对它们的repositories拥有更多的控制,列一下它的特色:

非常便捷的用户界面,在同一个界面上可以获取:projects,最近的projects,用户,最近的用户,群组和状态;

允许设置仓库权限是共有的还是私有的;

“Snippet support”(翻译:片段的支持)让用户分享一个project的部分代码,而不是整个project;

受保护的分支是一种提升代码安全性的新方法,它们允许用户设置project的获取权限,所以一个团队中只有特定的人可以push,force push或者删除一个分支的代码;

Authentication levels(翻译:认证级别)更进一步的提升安全性,允许用户给人读写以外的权限。比如:你可以给一个组员跟踪变动的权限却不给他获取代码的权限;

你可以设置获取到团队的整体的改进进度,而不是你个人的进度;

开发者通过打上“仍在进行中”状态标签让其他成员知道代码没有完成,从而阻止未完成的代码合并到其他的代码中;

“innersourcing”公司的资源如果员工不在权限范围内,将不知道这个资源的存在。

其实三者都是基于Git的,可以说是Git的衍生品。OK终于写完啦,本宝宝要去吃个辣条补补脑啦

/* Ending */

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180421G1C5TT00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券