gitlab与github

文章目录
  1. 1. 简介
    1. 1.1. GitLab
    2. 1.2. GitHub
  2. 2. 两者区别
    1. 2.1. 相同点
    2. 2.2. 不同点:
    3. 2.3. gitlab安装及使用:
  3. 3. git相关概念:

两者都是用git实现代码托管的版本仓库,两者很相似,那它们的区别是?

简介

相比于GitHub,GitLab更适合企业级使用,为企业搭建GitLab软件版本管理服务器。

GitLab:https://about.gitlab.com/
GitHub: https://github.com/

GitLab

利用Ruby on Rail开发的开源应用程序,实现一个自托管的Git项目仓库,可以通过web界面进行访问公开的或者私人项目。
Ruby on Rail是一个使你开发、部署、维护web应用程序变得简单的框架。
GitLab拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释,可以管理团队对仓库的访问,
它非常易于浏览提交过的版本并提供一个文件历史库,它提供一个代码片段功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

GitHub

是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub。

两者区别

相同点

二者都是基于web的Git仓库,在很大程度上GitLab是仿造GitHub来做的,他们都提供了分享开源项目的平台,
为开发团队提供了存储、分享、发布和合作开发项目的中心化云存储的场所。

不同点:

  1. GitHub如果使用私有仓库,是需要付费的,GitLab可以在上面搭建私人的免费仓库
  2. GitLab让开发团队对他们的代码仓库拥有更多的控制,相对于GitHub,它有不少的特色:
    1. 允许免费设置仓库权限
    2. 允许用户选择分享一个project的部分代码
    3. 允许用户设置project的获取权限,进一步提升安全性
    4. 可以设置获取到团队整体的改进进度
    5. 通过innersourcing让不在权限范围内的人访问不到该资源

gitlab安装及使用:

  1. 关闭防火墙和selinux,并安装安装依赖的包

    1
    2
    3
    4
    5
    systemctl stop firewalld && sy
    stemctl disable firewalld
    setenforce 0 并修改/etc/selinux/config
    yum -y install openssh-server postfix
    yum install -y curl policycoreutils-python openssh-server
  2. 启动positfix和sshd

    1
    2
    systemctl enable postfix && systemctl start postfix
    systemctl enable sshd && systemctl start sshd
  3. 下载安装包并安装安装包

    1
    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
  4. 打开/etc/gitlab/gitlab.rb,将external_url = 'http://git.example.com'修改为自己的IP地址:http://xxx.xx.xxx.xx,然后执行下面的命令,对GitLab进行编译。
    sudo gitlab-ctl reconfigure

  5. 登录GitLab
    Username: root
    Password: 5iveL!fe
  6. GitLab管理
    gitlab-ctl start/stop/restart/reconfigure

git相关概念:

  • git 是一种版本控制系统,是一个命令,是一种工具
  • gitlib 是基于git功能的开发库
  • github 是一个基于git实现在线代码托管的仓库,包含一个网站界面,向互联网开放
  • gitlab 是一个基于git实现的在线代码仓库托管软件,一般用于在企业内搭建git私服
    git-ce是社区版,gitlab-ee是企业版,收费版
# git

本文总阅读量

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×