一. git 服务端
1.1 更新软件包
sudo apt-get update -y sudo apt-get upgrade -y
1.2 安装git-all
sudo apt install git-all $ git --version git version 2.17.1
1.3 配置
//增加一个git用户
sudo useradd git
//切换到git用户
sudo su git
//切换到git目录
cd /home/git
1.4 git 新建仓库
git init --bare /home/git/仓库名.git
1.5 新增文件
git add file_name
1.6 本地提交
//提交所有改动的文件
git commit -a
1.7 远程提交
git push origin master
1.8 本地更新
git pull
###################################分隔符#####################################
二. gitlab 服务端搭建
2.1 安装必须的一些服务
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
sudo apt-get install -y postfix
安装postfix时,使用左右键和回车键选择确定、取消,弹出列表选项的时候,选择 Internet Site
2.2 信任gitlab 的GPG 公钥
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null
2.3 配置软件源为清华镜像地址
sudo vim /etc/apt/source.list.d/gitlab-ce.list
写入:
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu bionic main
注意:
bionic -> 对应ubuntu 18.04 LTS 版本
xenial -> 对应ubuntu 16.04 LTS 版本
2.4 安装
i. 直接安装,之前需要再次更新
sudo apt-get update
sudo apt-get install gitlab-ce
ii. 官方脚本安装
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
iii. 上面的安装方式还是会很慢,不如直接官网下载.deb 安装包安装
官网地址:
https://packages.gitlab.com/gitlab/gitlab-ce
选择.deb安装包,并且对应ubuntu版本为bionic
点开,可以看到安装方式
下拉选择,wget方式
即:
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/bionic/gitlab-ce_13.11.4-ce.0_amd64.deb/download.deb
等待几分钟(八九百Mb),下载完成后,直接安装.deb包
sudo dpkg -i gitlab-ce_13.11.4-ce.0_amd64.deb
2.5 gitlab 配置
i. 一般配置(无效)
修改gitlab配置文件
sudo vim /etc/gitlab/gitlab.rb
在 vim 命令方式下使用 ":/" 查找指定字符串,“n”往下查询,“N”往上查询,如:
:/external_url
查询到指定行,改为:
external_url "http://你的服务端ip"
同理,port部分,改为:
unicorn ['port'] = 8088
ii. 经测试,上述修改port方法没有效果,需要如下修改
修改gitlab 配置文件如下
external_url "http://ip(或域名):port"
...
ngix ['listen_port'] = port
2.6 加载配置,使gitlab配置生效
sudo gitlab-ctl reconfigure
很慢,时间有点长,等待中...几分钟
2.7 重启服务
sudo gitlab-ctl restart sudo gitlab-ctl start/stop
2.8 查看gitlab当前状态
sudo gitlab-ctl status
2.9 将gitlab配置为开机自启动服务
systemctl enable/disable gitlab-runsvdir.service
扩展
1. gitlab 默认安装路径是 /var/opt/gitlab;
2. 第6步,重载配置时,可能会导致卡主,卡主处理如下:
提示无法启动,runsv no running
i 先尝试启动该服务
systemctl start gitlab-runsvdir.service
ii 查看系统服务项
systemctl -t target
如果系统服务正常的话,提示应该是"loaded active active",如果存在"inactive dead" 项,则意味着某些服务出错了
如提示
multi-user.target loaded inactive dead start Multi-User System
iii 查看系统任务列表
systemctl list-jobs
如存在某个任务是running 的状态,则是该任务阻塞了其它所有服务
1 graphical.target start waiting
107 plymouth-quit-wait.service start running
2 multi-user.target start waiting
169 ureadahead-stop.timer start waiting
121 gitlab-runsvdir.service start waiting
151 system-getty.slice start waiting
31 setvtrgb.service start waiting
122 systemd-update-utmp-runlevel.service start waiting
iv 结束该任务
systemctl stop plymouth-quit-wait.service
v 关闭/启动该服务
systemctl mask plymouth-quit-wait.service //关闭任务
systemctl unmask plymouth-quit-wait.service //开启任务
3. 查看开机自启动服务占用时间
systemd-analyze blame
4. 查看依赖的服务,几乎是所有服务,并没有影响启动时间
systemctl list-dependencies --reverse plymouth-quit-wait.service
###################################分隔符#####################################
三. SNV 服务端
3.1 安装
sudo apt-get update sudo apt-get install subversion
$ svnserve --version
svnserve 版本 1.9.7(r1800392)
3.2 创建默认仓库目录
sudo mkdir -p /usr/svn/svnrep
cd /usr/svn
sudo chmod 777 -R /usr/svn/svnrep
3.3 创建SVN仓库
svnadmin create /usr/svn/svnrep
cd /usr/svn/svnrep
3.4 对db 进行权限设置
sudo chmod 777 -R db/
3.5 设置访问权限
cd conf
vim /usr/svn/svnrep/conf/svnserve.conf
改为
#anon-access = read (匿名用户可读,可改成none,即不可读)
#auth-access = write (权限用户可写)
#password-db = passwd (密码文件为passwd)
#authz-db = authz (权限文件为authz)
(去掉前面的#,并且顶格,不然会报错)
修改passwd 文件,添加访问用户
sudo vim /usr/svn/svnrep/conf/passwd
修改authz 文件,设置用户权限
sudo vim /usr/svn/svnrep/conf/authz
admin = guoke //用户guoke属于admin权限组
[repository:/]
@admin = rw //admin权限组的权限是读和写
* = rw 所有的组都具有读权限和写权限
6. 启动
svnserve -d -r /usr/svn
//或者,更改默认监听端口
svnserve --listen-port=8899 -d -r /usr/svn
-d: 表示后台运行
-r: 指定服务器根目录
扩展
查看是否启动成功
ps -ef|grep svnserve ps aux|grep svnserve
开机自启动,将启动脚本添加人
sudo vim /etc/rc.local