Gitlab简介

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

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

管理的命令
gitlab-ctl stop
gitlab-ctl start
gitlab-ctl restart

Gitlab的安装

第一步:上传安装包

[root@ken ~]# rz

[root@ken ~]# ls | grep git

gitlab-ce-8.9.5-ce.0.el7.x86_64.rpm

第二步:使用yum安装

[root@ken ~]# yum localinstall gitlab-ce-8.9.-ce..el7.x86_64.rpm -y

第三步:修改配置文件

在文件11行左右把主机名修改为你的IP地址

[root@ken ~]# vim /etc/gitlab/gitlab.rb 
...
## Url on which GitLab will be reachable.
## For more details on configuring external_url see:
## https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/configuration.md#c onfiguring-the-external-url-for-gitlab
external_url 'http://10.220.5.137' ## Note: configuration settings below are optional.
## Uncomment and change the value.
############################
# gitlab.yml configuration #
############################
...

第四步:使配置生效

需要一定的时间

[root@ken ~]# gitlab-ctl reconfigure
...

Running handlers:
Running handlers complete
Chef Client finished, 224/314 resources updated in 02 minutes 55 seconds
gitlab Reconfigured!

第五步:浏览器查看

直接输入服务器IP即可访问

在这里输入新的密码,密码长度8位,点击change your password

点击之后跳转到如下的界面

把Admin换成root,密码就是刚才设置的密码,点击sign in

跳转到如下的界面即成功

Gitlab的使用-创建项目

第一步:创建用户

第一步: 点击左上角的扳手符号

第二步:点击NEW USER

第三步:填写用户信息

第二步:创建项目组

第一步:点击NEW GROUP

第二步:填写项目组信息

第三步:创建项目

第一步:点击NEW PROJECT

第二步:填写项目信息

project owner填写项目组的组名

Gitlab在linux中的使用

用到的命令

1.git add

2. git commit

3. git push origin 字分支名字

第一步:创建工作目录

[root@ken ~]# mkdir lll
[root@ken lll]# cd lll

第二步:从web仓库中下载项目

使用git clone

[root@ken lll]# git clone http://10.220.5.137/webs/webss.git
Cloning into 'webss'...
Username for 'http://10.220.5.137': root
Password for 'http://root@10.220.5.137':
remote: Counting objects: , done.
remote: Compressing objects: % (/), done.
remote: Total (delta ), reused (delta )
Unpacking objects: % (/), done.
[root@ken lll]# ls
nginx_pro webss

第三步:创建新的分支

进入到工作目录之下,即包含.git的目录

[root@ken lll]# cd webss/
[root@ken webss]# ls -a
. .. .git hy README
[root@ken webss]# git branch
* master
[root@ken webss]# git branch dev
[root@ken webss]# git checkout dev

第四步:创建测试文件并上传

[root@ken webss]# echo "test88888">test.file
[root@ken webss]# git add .
[root@ken webss]# git commit -m "test.file"
[master 4654ba0] test.file
file changed, insertion(+)
create mode test.file
[root@ken webss]# git push origin dev #当前子分支的名字

第五步:在网页查看gitlab

可以看到多个一个我们刚才在子分支创建的一个测试文件

Gitlab在linux中的使用之秘钥登录

在上面我们每次登录gitlab都要输入名字和面是不是很麻烦?

没关系,现在我们用秘钥来解决这个问题

第一步:查看web端gitlab的秘钥地址

第二步:在本机生成秘钥文件并查看公钥

[root@ken webss]# ssh-keygen
[root@ken webss]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGFGu/W0rx9XiTM6aehm71Vz30TzsLUb5/mCnLjUeJ1sZMS5MONeDR+AoYbXsbXE4vmZfMunEwqIKnduMctieWd/F0//+4FtOWmp0XAkJgatml4bqjvJ1ARxVyDOrXxQKsElC7MmRqw6ghONcoToytZbnXP9J9if6HHiU4sYVxJUKSAFngmk1Ta8DBwC7cvrVS7TFreCq2q0WIQPak2YHt3PUGZkt/LFrWqCJcWYI5dE3/++sWpalLFJQev0jRL6DQDGfxQmxS5AmeMZvFa3d0FUJLVpzzMjNh+2hIT8IJoaA0BSmowGUtFGc++HBqMvXPohIQTBL3aD4uf6aK4ct9 root@ken

第三步:复制秘钥信息填写进web服务端

第四步:点击提交之后再次下载仓库信息

注意这里git clone之后写的是ssh的信息,不是http的连接信息了

回车之后可以看到没有输入任何东西就直接下载完成

[root@ken k]# git clone git@10.220.5.137:webg1/webss.git
Cloning into 'webss'...
remote: Counting objects: , done.
remote: Compressing objects: % (/), done.
remote: Total (delta ), reused (delta )
Receiving objects: % (/), done.

[root@ken k]# ls
 webss

Gitlab在window中的使用

第一步:准备文件

你需要首先在网上下载下面的这个客户端工具

第二步:安装

第三步:创建一个文件夹作为工作目录并进入目录之后

右击鼠标有两个选项,一个是bash一个是图形化,我选择bash,会出现如下的界面

第四步:生成秘钥信息,进行免密登录

在这个界面输入ssh-keygen一直点回车生成秘钥信息

第五步:把公钥信息输入到web服务端

可以从上面的信息中看到秘钥信息保存在哪了,现在我们去c盘找

复制这个公钥里面的信息

第六步:本地下载仓库

使用git clone 加上你的项目ssh信息

第七步:本地查看

发现已经有了仓库信息了,现在你就可以开始写程序了

第八步:测试

进入到包含.git的目录并在此右击打开bash,执行创建分支操作,并建立test.txt测试文件

第九步:上传文件

和linux中一样执行如下命令

第十步:在web中查看

可以看到我们刚才在window中创建的文件也已经被上传上来了

Gitlab仓库搭建及在linux/windows中免密使用gitlab(二)--技术流ken的更多相关文章

  1. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(一)--技术流ken

    前言 在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+A ...

  2. Gitlab仓库搭建及在Linux/windows中的免密使用

    1. Gitlab简介 Gitlab:代码私有仓库,可以使用Git进行代码的管理. GitHub:公共仓库. GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭 ...

  3. Linux高级命令进阶(week1_day2)--技术流ken

    输出重定向 场景:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术. >:覆盖输出,会覆盖掉原先的文件内容 ...

  4. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(二)--技术流ken

    项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)--技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个 ...

  5. Git+Gitlab+Ansible的roles实现一键部署Nginx静态网站(一)--技术流ken

    前言 截止目前已经写了<Ansible基础认识及安装使用详解(一)--技术流ken>,<Ansible常用模块介绍及使用(二)--技术流ken><Ansible剧本介绍及 ...

  6. Linux磁盘管理及LVM讲解(week2_day2)--技术流ken

    硬盘接口 从整体的角度上,硬盘接口分为IDE.SATA.SCSI和SAS四种,IDE接口硬盘多用于家用产品中,也部分应用于服务器,SCSI接口的硬盘则主要应用于服务器市场,而SAS只在高端服务器上,价 ...

  7. Git+Gitlab+Ansible剧本实现一键部署动态网站(二)--技术流ken

    项目前言 之前已经写了一篇关于git和ansible的博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>.关于git,gitliab,ansible在我 ...

  8. Linux权限管理(week1_day5)--技术流ken

    权限概述 Linux系统一般将文件可存/取访问的身份分为3个类别:owner(拥有者).group(和所有者同组的用户).others(其他人,除了所有者,除了同组的用户以及除了超级管理员),且3种身 ...

  9. Linux常用命令详解(week1_day1_3)--技术流ken

    本节内容 pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: [root@ken ~]# pidof ss ...

随机推荐

  1. 20155205 郝博雅 Exp6 信息搜集与漏洞扫描

    20155205 郝博雅 Exp6 信息搜集与漏洞扫描 一.实践内容 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口扫描.OS及服务版本探测.具体服务 ...

  2. kubernetes CSI 插件机制学习笔记

    前言 最近在极客时间订阅了kubernetes的专栏,这篇文章是想记录一下自己学习 CSI 插件机制 (container-storage-interface) 的过程,加深一下记忆. 准备工作 老师 ...

  3. react native (1) 新建页面并跳转

    新建页面 1.新建文件 import React from 'react'; import { Text } from 'react-native'; export default class tod ...

  4. Python之旅Day12 HTML与CSS

    前端CSS与HTML部分 <a href="http://www.baidu.com" target="_Blank">百度</a>_B ...

  5. 架构(一)JDK安装

    一 遇到的问题 问题1:安装jdk的时候,jdk解压失败? 我是通过wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b84 ...

  6. TDD:什么是桩(stub)和模拟(mock)?

    背景 本文假设你对TDD.Stub和Mock已经有了初步的认识,本文简单解释一下stub和mock的区别和使用场景,先看看他们之间的关系: 由上图可以知道mock框架可以非常容易的开发stub和moc ...

  7. 「ZJOI2017」树状数组(二维线段树)

    「ZJOI2017」树状数组(二维线段树) 吉老师的题目真是难想... 代码中求的是 \(\sum_{i=l-1}^{r-1}a_i\),而实际求的是 \(\sum_{i=l}^{r}a_i\),所以 ...

  8. Windows下编译安装 FFmpeg

    在Linux/Mac下编译 ffmpeg是非常方便的.但要在 Windows下编译 ffmpeg还真要花点时间.以下就是在 Windowns下编译ffmpeg的步骤: 一.安装Cygwin 在wind ...

  9. php过滤&nbsp;字符

    今天在抓取页面中得到字符串:"卡牌 ",使用str_replace . preg_replace 和 strip_tags过滤都无解. 最后google到2种方式,如下: str_ ...

  10. Spring Boot 2.1.0 已发布,7 个重大更新!

    距离<重磅:Spring Boot 2.0 正式发布!>已经过去大半年了,而 Spring Boot 2.1.0 在 10 月底就发布了,我们来看下 Spring Boot 2.1.0 都 ...