先说结论:git是工具;github是互联网上的一个公共仓库;gitlab是在服务器上可以自己搭建的一个仓库,相当于私人github
git是一个管理代码的工具,在主机上安装git相关软件(windows/linux均可)后,可以通过其创建本地仓库(一个目录),有了这个本地仓库后,你可以将你的代码存放到这个目录,然后使用命令或图形界面(点选鼠标)将代码上传到本地仓库,对代码进行多次迭代后每次保存、上传到本地仓库,git都会有日志记录每次的修改,也可以选择回退到某个版本。
当你有了git后,还仅可以进行单人开发任务,如果需要团队合作来开发的话,github来了。 github是一个互联网上的仓库https://github.com/,可以用于存放项目代码,并且可以让所有人下载、上传或修改(github上的仓库为公共仓库,所有人都可以自由下载,如果想限制为指定人的话需要付费)。你或者你的项目组成员可以在本地创建本地git仓库后进行代码开发、迭代,然后在需要的时候将本地的代码上传给远程仓库(github),所有人都可以随意上传下载远程仓库上的项目代码,相当与一个远端、可以版本控制的公共文件夹?不知道这个理解是否正确
刚才说了,github是公共的所有人都可以任意下载的,但是如果你公司的项目是不便于公开的,比如国企、银行等一些机构,要么github创建付费的私密仓库(其实也还是有点问题,毕竟代码还是在人家服务器上),要不然,gitlab来了。gitlab是一个服务,可以搭建在服务器上,作用相当于一个本地的github。搭建好gitlab后可以通过浏览器访问ip地址打开一个网页,页面及其类似github,但是这是搭建在你自己服务器上的,所以可以控制让谁可以访问,就是一个免费的私人git仓库吧。