(一)、简介

git的有点

1、git是分布式的,svn不是

git分布式本地就可以用,可以随便保存各种历史痕迹,不用担心污染服务器,连不上服务器也能提交代码、查看log。

2、GIT分支和SVN的分支不同

分支在SVN中实际上是版本库中的一份copy,而git一个仓库是一个快照,所以git 切换、合并分支等操作更快速。

3、git有一个强大的代码仓库管理系统 - gitlab

可以很方便的管理权限、代码review,创建、管理project

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用。

版本:GitLab 分为社区版(CE) 和企业版(EE)

(二)、安装

方法一:通过yum源进行安装

1、配置yum源

[root@otrs004097 ~]# cat /etc/yum.repos.d/gitlab-ce.repo

[gitlab-ce]

name=Gitlab CE Repository

baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/

gpgcheck=0

enabled=1

2、更新本地yum缓存

sudo yum makecache

3、安装GitLab社区版

sudo yum install gitlab-ce #自动安装最新版

sudo yum install gitlab-ce-x.x.x #安装指定版本

4、GitLab常用命令

sudo gitlab-ctl start # 启动所有 gitlab 组件;

sudo gitlab-ctl stop # 停止所有 gitlab 组件;

sudo gitlab-ctl restart # 重启所有 gitlab 组件;

sudo gitlab-ctl status # 查看服务状态;

sudo gitlab-ctl reconfigure # 启动服务;

sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;

gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;

sudo gitlab-ctl tail # 查看日志;

方法二:通过rpm包安装

gitlab通过下载rpm包集成了它所需要的软件,简化安装步骤,rpm包可以从官网上或清华镜像源获取https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/. 下载最新的版本:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm

[root@otrs004097 opt]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm

[root@otrs004097 opt]# rpm -ivh gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm

或者

[root@otrs004097 opt]#yum localinstall -y gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm

(三)、修改配置文件。

[root@otrs004097 ~]# vim /etc/gitlab/gitlab.rb

external_url 'http://192.168.4.97'

[root@otrs004097 ~]# gitlab-ctl reconfigure #####重新加载配置

注意要保留8080端口否则会报错的。可以修改下边的配置文件 vim /var/opt/gitlab/gitlab-rails/etc/unicorn.rb

listen "127.0.0.1:8080", :tcp_nopush => true

重置成功后就可以登录网页 了。

备注:gitlab的守护进程是会默认开启nginx的,如果想要关闭,可以尝试一下操作

gitlab-ctl stop nginx

gitlab-ctl restart nginx

如果想要释放资源,关闭gitlab时,可以尝试一下操作

gitlab-ctl stop

(四)、gitlab的使用

1、登录gitlab,在浏览器里输入相关的信息

2、默认的账号为:root,密码是刚才重置的。

3、安装Git工具linux:安装Git,使用自带的源安装。

[root@otrs004097 opt]# yum install git -y

4、生成密钥文件,使用ssh-keygen生成密钥文件.ssh/id_rsa.pub.

[root@otrs004097 opt]# ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:at+BXYp8LPxfZ6U00BssEFb1LhvnyphuhFpOyRYYBMo root@otrs004097

The key's randomart image is:

+---[RSA 2048]----+

| .o. +o... |

| . . .. . o . |

| E o o + .|

| . . o + |

| S. +. * +|

| + =Bo.. O.|

| o ***. + +|

| . ..=...= + |

| . o+= o |

+----[SHA256]-----+

5、在gitlab主页中新建一个project。

6、客户端生成密钥文件

[root@DEV004021 ~]# cat /root/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDjYPFEWZ/TqT750fQnsoYgzVtjp9NyT3dVPF8BnUJ8coDQLixoYFevXeWbOhECoYI5ekY/6PgLjy3yVJ8uX3BitluHybttO3QhtvmNVRhHTilSyX2c6fxDMIouD08Xnda1w3I9mD8SD+Xg/OCy/8V+QWpfvC1D+oU6Hkt9UyEKgxZ5hnInnc4dWJgpuGsHKa2Hqrr3VImPaSeJ1xVuYl8jsxQjSa1+zIzDbfM0NLCfT/1FGPLCJ4kjOKTFIv3AHn3y9hwTs1H1RrE5bv5H4fNpjG1GsOGKw9MxSP2mV9RHhOI4ItiMK0NNNrZVVa+Lgs50/8s9cn3tWzaHiXNWPEWR root@DEV004021

将公钥复制到gitlab中

查看ssh key添加完成

7、点击项目,查看ssh地址和http地址

(五)、客户端下载和上传文件,都在客户端操作

1、进入到相应的目录,下载代码

[root@DEV004019 data]# mkdir /opt/gitlab

[root@DEV004019 data]# cd /opt/gitlab/

[root@DEV004019 gitlab]# git clone http://192.168.4.97/root/jeeson.git

Cloning into 'jeeson'...

Username for 'http://192.168.4.97': root

Password for 'http://root@192.168.4.97':

remote: Enumerating objects: 6, done.

remote: Counting objects: 100% (6/6), done.

remote: Compressing objects: 100% (3/3), done.

remote: Total 6 (delta 0), reused 0 (delta 0)

Unpacking objects: 100% (6/6), done.

[root@DEV004019 gitlab]# ll

total 0

drwxr-xr-x 4 root root 64 Nov 20 16:48 jeeson

2、编辑相应的脚本文件

[root@DEV004019 jeeson]# vim testlqb.sh

echo "this is test shell "

3、将新增的文件加入到索引中

[root@DEV004019 jeeson]# git add testlqb.sh

4、将该文件提交到本地仓库中

[root@DEV004019 jeeson]# git commit -m "this is test shell"

[master 380ea1d] this is test shell

1 file changed, 1 insertion(+)

create mode 100644 testlqb.sh

5、将文件同步到gitlab服务器上

[root@DEV004019 jeeson]# git push -u origin master

Username for 'http://192.168.4.97': root

Password for 'http://root@192.168.4.97':

Counting objects: 4, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (2/2), done.

Writing objects: 100% (3/3), 286 bytes | 0 bytes/s, done.

Total 3 (delta 1), reused 0 (delta 0)

To http://192.168.4.97/root/jeeson.git

c47a84c..380ea1d master -> master

Branch master set up to track remote branch master from origin.

6、在gitlab服务器的网页查看

gitlab本地配置_Gitlab的安装及基本使用(一)相关推荐

  1. gitlab mysql 配置_gitlab的安装与修改端口配置

    一   获取安装包 gitlab的在线安装我没有尝试过,这里仅仅记录一下直接下载rpm包后的安装步骤. 我的环境是centos6,下载安装包的时候要看清:我需要进入yum/el6/目录下,找到一个rp ...

  2. gitlab mysql 配置_Gitlab安装配置及使用

    gitlab是山寨版的github,它是开源的,你可以在自己的服务器上架设gitlab,用于团队私有项目的托管.gitlab支持树莓派2嵌入式设备,下面记录了在树莓派2上安装与配置gitlab的过程. ...

  3. git runner 配置_GitLab Runner安装注册配置管理

    本文是<GitLabCI实践>教程部分内容,点击上面图片获取免费公开课报名链接,欢迎报名学习!部分观点仅供参考. GitLab Runner是一个开源项目,用于运行您的作业并将结果发送回G ...

  4. Linux 环境下安装 GitLab 与配置

    什么是 GitLab? GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务. GitLab的功能特点 提供了管理,计划,创建,验证,打 ...

  5. Git入门篇:镜像下载,安装,本地配置及其Git的本地文件上传到gitee详解

    Git 一.Git介绍 Git和SVN类似,也是一个配置管理工具,而他们的区别之处在于: SVN是集中管理 所有存档要保存在一台服务器上. 这里可能存在一个单点故障的问题,即一旦服务器出问题,所有人都 ...

  6. jstack 脚本 自动日志_GitLab从安装到全自动化备份一条龙

    原文地址[1]欢迎star 需求 1.在新服务器上安装并搭建好gitlab2.手动+自动将旧服务器上的gitlab备份3.手动+自动将gitlab备份包scp到新服务器上4.手动+自动恢复新服务器上的 ...

  7. gitlab 本地 定时备份

    =============================================== 2018-04-26  08:40:52 =============================== ...

  8. 【Gitlab】配置、运行Gitlab容器实例及简单使用测试

    其实,回过头来看,Gitlab的配置.安装和运行并不是难,主要是在root用户密码如何获取的问题上花了很多时间,走了很多的弯路. # 默认下载的镜像就是latest $ docker pull git ...

  9. Gitlab本地备份与远程机备份

    Gitlab本地备份与远程机备份 我们的需求是:首先将gitlab按照指定时间自动备份至本地机,然后将本地备份定时自动发送至远程机,以此来达到双备份双保险的目的. 1.本地机备份: 由于我们gitla ...

最新文章

  1. 2022-2028年中国摩托车行业投资分析及前景预测报告(全卷)
  2. 拼多多面试|如何用 Redis 统计独立用户访问量?
  3. android.os.NetworkOnMainThreadException
  4. 图的度 知识图谱的一度关系 几度关系
  5. 请教如何改善C#中socket通信机客户端程序的健壮性
  6. 如何创建修改分区表和如何查看分区表
  7. android 自定义搜索框edittext,Android编程自定义搜索框实现方法【附demo源码下载】...
  8. oracle in与exists的使用
  9. 博客从“新浪云“迁移到CSDN的说明
  10. 如何解决Maven依赖本地仓库eclipse报错的问题
  11. 前端性能优化:Add Expires headers
  12. java设置首页跳转_SpringBoot设置首页(默认页)跳转功能的实现方案
  13. python正则表达式案例_Python正则表达式使用经典实例
  14. 基于视图的DNS解析
  15. Mybitis框架2016年1月3日
  16. linux-0.11内核 任务的堆栈切换
  17. Java并发编程:进程和线程之由来__进程让操作系统的并发性成为可能,而线程让进程的内部并发成为可能...
  18. 计算机组成原理硬件设计,计算机组成原理硬件设计报告..doc
  19. LINQ TO SQL 如何进行增删改查
  20. 《英雄联盟》捞月狗数据初探

热门文章

  1. 第1章 初识软件工程
  2. CentOS/Deepin遇到Qt系列问题的解决方案(例如error: cannot find -lGL和搜狗输入法无效等)
  3. Linux_Learning_兄弟连
  4. matlab 增量学习,支持向量机在线增量学习算法的MATLAB实现
  5. 它来了它来了!2020深度学习硬核技术干货集锦!
  6. 微积分的历史(五):发展之泰勒公式(上)
  7. 大声说出我爱你——寒假英语学习总结
  8. 实现正负值及多条Y轴 Echarts柱状图
  9. 高中计算机教师研究方向,高中信息技术教师专业知识研究
  10. 重庆计算机专业在职研究生,重庆师范大学在职研究生计算机专业教学方式