一、gitlab简介

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

  【管理命令】 gitlab-ctl stop

              gitlab-ctl start

         gitlab-ctl restart

二、gitlab私有仓库的搭建

安装配置,搭建web服务  

[root@localhost ~]# rz             #上传安装包

[root@localhost ~]# ls             #查看安装是否上传
gitlab-ce-8.9.-ce..el7.x86_64.rpm
[root@localhost ~]# yum install gitlab-ce-8.9.-ce..el7.x86_64.rpm -y #安装软件包
[root@localhost ~]# vim /etc/gitlab/gitlab.rb #编辑配置文件 external_url 'http://192.168.42.9' #将localhost改为主机ip [root@localhost ~]# gitlab-ctl reconfigure #重新配置gitlab
Running handlers:
Running handlers complete
Chef Client finished, 226/314 resources updated in 02 minutes 15 seconds
gitlab Reconfigured! 【注意】一定要关闭httpd,因为gitlab也用80端口

三、gitlab使用演示

浏览器访问ip地址

创建用户,创建组,这里就不多加赘述了

创建new project

shell端执行操作命令,去web端查看

[root@localhost lion]# git clone http://192.168.42.9/root/lion.git           #克隆远程主机仓库
[root@localhost lion]# cd lion #切换目录,创建文件并提交
[root@localhost lion]# ls -a
. .. .git
[root@localhost lion]# touch he
[root@localhost lion]# echo 'hepang' >> he
[root@localhost lion]# git add .
[root@localhost lion]# git commit -m v1
[master (root-commit) f502b87] v1
file changed, insertion(+)
create mode he
[root@localhost lion]# git log
commit f502b8792b5c054de4fff7f5628317d7b559ebf8
Author: Your Name <you@example.com>
Date: Thu May :: - v1
[root@localhost lion]# cat he
hepang
[root@localhost lion]# git push -u origin master #推送到远程主机 (gnome-ssh-askpass:): Gtk-WARNING **: cannot open display:
error: unable to read askpass response from '/usr/libexec/openssh/gnome-ssh-askpass'
Username for 'http://192.168.42.9': root (gnome-ssh-askpass:): Gtk-WARNING **: cannot open display:
error: unable to read askpass response from '/usr/libexec/openssh/gnome-ssh-askpass'
Password for 'http://root@192.168.42.9':
Counting objects: , done.
Writing objects: % (/), bytes | bytes/s, done.
Total (delta ), reused (delta )
To http://192.168.42.9/root/lion.git
* [new branch] master -> master
Branch master set up to track remote branch master from origin.

三、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: 6, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (6/6), 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仓库的使用的更多相关文章

  1. Gitlab仓库规范实践建议

    记录一下Gitlab仓库实践信息: 仓库是指一个可以git clone的地址,用于存储某个服务,模块,子系统或某类辅助代码的地方 仓库的visibility level一般设置为Private(访问需 ...

  2. gitlab仓库迁移

    遇到一个情况,需要将两个gitlab仓库合并.好在都是使用的ldap账户登陆,用户账户不需要迁移. 实际的使用情况下,需要迁移的主要部分为分组及分组下项目.gitlab的api还是很给力的,能够获取所 ...

  3. Go的Get命令兼容公司Gitlab仓库的HTTP协议

    对于公司的私有Gitlab仓库,没有对https支持,在使用最新版本的go get命令时,需要使用-insecure参数来支持http,但如果导入的包里边依赖了需要https的仓库,就不好使了,折腾了 ...

  4. github仓库迁移到gitlab以及gitlab仓库迁移到另一个gitlab服务器

    一. github仓库迁移到gitlab 先进入 new project: 选择 Import project, 选择下面的github: 进入后,这里需要github的 personal acces ...

  5. centos7搭建gitlab仓库

    在有一些企业里会搭建属于自己的代码仓库,只能内网访问,所以说今天在centos7中搭建了一个gitlab仓库,大家也可以搭建一个玩一玩.呵呵 1.首先安装依赖软件包和开启ssh服务: sudo yum ...

  6. gitstats 统计gitlab仓库中的代码

    使用Git版本库,有一些可视化的工具,如gitk,giggle等,来查看项目的开发历史.但对于大型的项目,这些简单的可视化工具远远不足以了解项目完整的开发历史,一些定量的统计数据(如每日提交量,行数等 ...

  7. 本地Git仓库与GitHub/GitLab仓库同步

    本地仓库即为在你的电脑上的项目文件,远程仓库即为服务器仓库,如GitHub.GitLab或其他等.此处以GitHub介绍本地仓库与远程仓库的同步.可先创建本地仓库,也可先创建GitHub仓库,但都需要 ...

  8. 「BUAA OO Pre」Git生成多个ssh key并连接GitLab仓库

    「BUAA OO Pre」Git生成多个ssh key并连接GitLab仓库 Part 0 前言 写作背景 笔者在配置学校GitLab的ssh key时遇到一些问题,原因应为曾经配置过GitHub的s ...

  9. Linux安装gitlab仓库

    linux安装gitlab仓库 注:此安装方式是安装在docker上 1. 安装docker 可根据链接文档进行操作安装 https://www.cnblogs.com/cherish-sweet/p ...

  10. GIT入门笔记(15)- 链接到私有GitLab仓库

    GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码,管理 ...

随机推荐

  1. centos nginx https 配置

    1,如果想配置一个域名到指定目录咋弄呢?下面这个 server { listen ; server_name 这里换成你的域名,例如baidu.com; set $root_path '/home/w ...

  2. LNMP安装与配置之MySQL

    MySQL 是最流行的关系型数据库管理系统之一,今天的安装是在CentOS7环境下进行安装,安装的版本是MySQL5.7,有需要别的版本可点击  官网. 一.安装 1.配置YUM源 # 下载mysql ...

  3. MySQL Audit日志审计

    一.简介 数据库审计能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库受到的风险行为进行告警,对攻击行为进行阻断,它通过对用户访问数据库行为的记录.分析和汇报,用来帮助用 ...

  4. springcloud实践(一)服务发现:Eureka

    Eureka 入门 是什么? Eureka 是 Netflix 开源的一个 RESTful服务,主要用于服务注册与发现. 它由Eureka server 和Eureka client组成. Eurek ...

  5. k8s 1.16.3 yaml声明变化

    apiVersion: apps/v1 #变化的 kind: Deployment metadata: name: taint labels: app: taint spec: replicas: 3 ...

  6. expect无交互操作

    #!/usr/bin/expect set ip '192.168.4.5' set ' set timeout spawn ssh root@$ip expect { "yes/no&qu ...

  7. TTTTTTTTTTTTTTTT hdu 5510 Bazinga 字符串+哈希

    Bazinga Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Sub ...

  8. Java Web项目案例之---登录注册和增删改查(jsp+servlet)

    登录注册和增删改查(jsp+servlet) (一)功能介绍 1.用户输入正确的密码进行登录 2.新用户可以进行注册 3.登录后显示学生的信息表 4.可以添加学生 5.可以修改学生已有信息 6.可以删 ...

  9. 安装lanproxy服务端、客户端以及小问题解决

    准备 我们这里使用java客户端与服务端连接 1.一台公网服务器(运行proxy-server).2.一台内网客户端(运行proxy-client). 下载地址:https://seafile.cdj ...

  10. Selenium 的页面加载以及几种等待的问题

    1. PageLoadStrategy : 当调用driver.get("https://xxxx.xxx.xxx")来访问某页面时,get方法通常会阻塞浏览器直到页面完全加载后才 ...