CentOS系统上搭建Git版本控制服务器的教程

CentOS系统上搭建Git版本控制服务器的教程,第1张

1yum安装Git服务器

代码如下:

[root@git ~]# cd src/

[root@git src]# wget http://dlfedoraprojectorg/pub/epel/5/x86_64/epel-release-5-4noarchrpm

[root@git src]# rpm -ivh epel-release-5-4noarchrpm

Preparing                ########################################### [100%]

  package epel-release-5-4noarch is already installed

[root@git ~]# yum list

[root@git ~]# yum install -y git

2创建一个git用户,用来运行git服务

代码如下:

[root@git ~]# adduser git

3创建客户端登录证书

注,收集所有需要登录的用户的公钥,就是他们自己生成的id_rsapub文件,把所有公钥复制到/home/git/ssh/authorized_keys文件里,一行一个。嘿嘿!

1)客户端生成id_rsapub文件的命令

代码如下:

$ ssh-keygen -t rsa

$ cat  ssh/id_rsapub

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NwUHeNNi+PC6KlrcJrXXDmKxRMmgHIPp79sgX6zqfdSlmNj7rBPQeyEKS9Wg8yI6jd8aG2jsUx99Vjti2VK2vEXKkRHxwID7ri69gE71RfDtv6ekafnzLo14J8hAp0spMk+N3wEAQRYDmcYo1wmnm/jMBedGrHj4NJQ1vYy1hVtJasGMSzjcMrlz9qvaluWnQ5tQjKFQVVwKsRRRzs8qTvzVhLJt4NQ+CAN45tqfsRuf58Uba9QNK7/6xSUiIKXQiILz8PMGJ3MnlV+eN3wx2aeztdevxu9plggtG05SMmd8GNVzXrN1IaxXSvz0UwjQ2kygu7aCqO8AZWH49rouw== leo@LEO-PC

注,一路回车即可,将生成的id_rsapub,复制给管理员,帮你在服务器上增加一下,下次你用git时就不需要输入用户名和密码了。

2)查看服务器上authorized_keys文件

代码如下:

[root@git ~]# cat /home/git/ssh/authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwMU4FKB6NRc3XSoIunWsdvVVuSoncbVb5Al6lB3ciswBVd++YmJFhqwkITNGccrO5sycROs9+Fbjgd6oBSzNuaBtCIbwNNsEyM/henTl2euI3XsnJQ/ITr6c/q0P3WoGl4E2QFQ2kZqs+1eDC0CgHcBrqvFv1Jr414sVYK9lfZwIF+jDdtaBOrSJuq1Agx9pGUFUEB4tQfkXxsWm/MvOmKAVvduKDE1eenUEL9zzyeELPcSXLe3NOoTjZhkX6EEXxQR1ZiZRFywLpfM4qopZ10to2KIUyVtzw6hx6V3cg7kn40lYVW0EAMATw9dVldwcRUI+kJzJSKUTKDVSwY3/+Q== root@CHENMINGQIAN

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAsmmJuR+KhRSpdSirCiL30RA8WbfgicY1z7itWVnKHJW6hTuJFhzruY59FilVjJR1hbQBluP9JnK3XPSK9PSg+bwiJ2iQRa39rXck35r+trVOLyNbPyfKVRfOemD8YuykMlyr5JeW8gZjsHEuLnJ8//RiCiYzd3RT/SSUQ4yawDoIIWkz3eUSL09xoCRZFBsAp+S/LD3vx2MN+FNOHwvqcE+yK3oRNIqjWwLoKE0e5TRnqNgrPQ95PJYB3XPUulzaeMwsWPZs7jIUMl/5yEqSgAkioa8SVMOsikYJG/erv99NNVgFmpCBIiWqKEGkNrIpYzLLHDSYQ4g5Gbci/RZ54Q== Administrator@WIN2003X323

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NwUHeNNi+PC6KlrcJrXXDmKxRMmgHIPp79sgX6zqfdSlmNj7rBPQeyEKS9Wg8yI6jd8aG2jsUx99Vjti2VK2vEXKkRHxwID7ri69gE71RfDtv6ekafnzLo14J8hAp0spMk+N3wEAQRYDmcYo1wmnm/jMBedGrHj4NJQ1vYy1hVtJasGMSzjcMrlz9qvaluWnQ5tQjKFQVVwKsRRRzs8qTvzVhLJt4NQ+CAN45tqfsRuf58Uba9QNK7/6xSUiIKXQiILz8PMGJ3MnlV+eN3wx2aeztdevxu9plggtG05SMmd8GNVzXrN1IaxXSvz0UwjQ2kygu7aCqO8AZWH49rouw== leo@LEO-PC

说明:我这里有三个用户登录服务器,所以我这里就有三个ssh-rsa,大家可以看一下。

4初始化Git仓库

注,先选定一个目录作为Git仓库,这里是/data/git/projectgit。

代码如下:

[root@git ~]# cd /data/git/

[root@git git]# git init --bare projectgit

[root@git projectgit]# ls

branches  config  description  HEAD  hooks  index  info  objects  refs

执行以上命令 Git命令,会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以git结尾。然后,把owner改为git:

代码如下:

[root@git git]# chown -R gitgit projectgit

[root@git git]# ls -l

总计 4

代码如下:

drwxr-xr-x 7 git git 4096 05-09 13:50 projectgit

5禁用shell登录

注,出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:

代码如下:

[root@git ~]# cat /etc/passwd | grep git

git:x:1001:1001:git version control:/home/git:/bin/bash

改为:

代码如下:

[root@git ~]# vim /etc/passwd

git:x:1001:1001:git version control:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

6克隆远程仓库

注,现在可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:

注,$ git clone git@gitjjhhcom:/data/git/projectgit,其中git用户名,gitjjhhcom服务器,/data/git/prgjectgit是仓库路径。好了,到这里服务器的搭建到这里就完成了,下面我们来安装一下客户端。

7创建SSH Key

首先在用户主目录下,看看有没有ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsapub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

代码如下:

$ ssh-keygen -t rsa -C "youremail@examplecom"  

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到ssh目录,里面有id_rsa和id_rsapub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsapub是公钥,可以放心地告诉任何人。

8Git服务器打开RSA认证

然后就可以去Git服务器上添加你的公钥用来验证你的信息了。在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开,即:

1RSAAuthentication yes

2PubkeyAuthentication yes

3AuthorizedKeysFile ssh/authorized_keys

这里我们可以看到公钥存放在ssh/authorized_keys文件中。所以我们在/home/git下创建ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。

然后再次clone的时候,或者是之后push的时候,就不需要再输入密码了:

代码如下:

Zhu@XXX/E/testgit/834

$ git clone git@192168834:/data/git/learngitgit

Cloning into 'learngit'

warning: You appear to have cloned an empty repository

Checking connectivity done

1、主要看你的网站每天大概多少流量。如果是一万PV访问量以下的话,用1核2g内存的阿里云服务器就可以了。

如果超过一万每天的访问量,就要考虑用 2核4g内存的服务器了,会更流畅。

2、可以在阿里云主机上面安装第三方一键php包的配置。好在国人也开发了这方面的面板,可以免费的使用。

3、至于网站搬家,可以手动搬家,也可以借助面板或者程序来实现半自动搬家。

4、借助这些 php面板,可以轻松配置php环境,mysql数据库,phpmyadmin、nginx等环境软件。

不管使用的是win服务器还是linux 服务器,都可以在三方面板的帮助下,成功配置出可视化操作界面,然后一键部署 worpdress环境。

因为这方面内容较多,这里也写不开那么多内容,所以你可以留言或到我的博客上搜索相关内容,老魏有写过教程,还不止一篇,都挺详细的内容,可以帮助你入门。

1、安装java

方式一:安装java环境:yum install java-180-openjdk -y

使用命令检查是否安装成功 java -version

到此安装结束了。这样安装有一个好处就是不需要对path进行设置,自动就设置好了。jdk安装在/usr/lib/jvm目录下

方式二:先下载对应版本到本地,然后解压缩,配置环境变量(详细步骤百度即可)

2、安装jmeter

(1)登录自己服务器,在usr/local下创建文件夹jmeter,命令mkdir jmeter

(2)通过官网下载jmeter到本地

(3)通过xhell上传到对应的目录(cd到要上传的目录)

(4)yum -y install lrzsz(安装了lrzsz,执行该命令是因为服务器有的文件不让上传。让上传就不用执行)

(5)使用 rz -y命令进行文件上传,此时会弹出上传的窗口,进行上传即可

(6)上传成功之后进行解压 unzip apache-jmeter-54zip

(7)配置环境变量vi /etc/profile

esc+shift # 键盘同时按住,退出编辑模式

:wq # 保存退出

:q # 不保存退出

添加如下内容:

# set Jmeter enviroment

export JMETER_HOME=/usr/local/jmeter/apache-jmeter-54

export PATH=${PATH}:${JMETER_HOME}/bin

(8)source /etc/profile # 使配置文件生效

(9)jmeter -version

3、安装ant

(1)在usr/local下创建文件夹ant,命令mkdir ant

(2)通过官网下载ant到本地

(3)使用 rz -y命令进行文件上传,此时会弹出上传的窗口,进行上传即可 sz 文件名(服务器文件下载到本地)

(4)上传成功之后进行解压 unzip

(5)配置环境变量vi /etc/profile

# set Ant enviroment

export ANT_HOME=/usr/local/ant/apache-ant-11010

export PATH=${PATH}:${ANT_HOME}/bin

(6)source /etc/profile # 使配置文件生效

(7)ant -version

4、ant的配置

(1)将jmeter安装包extras文件夹里ant-jemter-111jar 复制到antlib下

cp ant-jmeter-111jar /usr/local/ant/apache-ant-11010/lib

(2)进入apache-jmeter-30extras运行ant ,查看该目录下是否出现Testjtl、Testhtml文件,若有,则构建成功

5、编写Ant的buildxml文件

(1)创建Jmeter_Test目录,放在/usr/local/下

(2)Jmeter_Test目录下创建buildxml、ResultLog(html,jtl)、Script(放脚本)

(3)buildxml文件内容去https://wwwcnblogscom/L-Test/p/9736808html下复制,需要修改里边的路径

6、jenkins安装

(1)Jenkins下载地址:https://jenkinsio/download/

(2)下载的是jenkinswar

(3)在Linux下启动Jenkins有两种方式,一种是在jenkinswar的存放目录下使用命令java -jar jenkinswar启动,

另外一种是把jenkinswar放在tomcat的webapps目录下,然后启动tomcat就可以了(本次用的第一种)

(4)在浏览器中输入http://服务器ip:8080/jenkins/

如果是用的阿里云服务器,启动成功之后,在浏览器访问,无法访问。解决办法就是登陆阿里云服务器修改一下安全规则,把端口范围调大

(5)访问成功之后输入管理员密码

(6)安装推荐的插件,创建管理员用户

7、jenkins的其他配置

(1)修改为中文依赖的三个插件localization-zh-cn、locale、localization-support

jenkins插件下载地址https://blogcsdnnet/qq_39530199/article/details/90266654

(2)不知道依赖于那个插件,可以看看manage Jenkins里边的报错 plugin is missing

8、git的安装

(1)git下载地址:https://mirrorsedgekernelorg/pub/software/scm/git/

(2)usr/local下新建git目录,cd到git,安装包上传上来, tar -zxvf v2170targz

(3)安装编译源码所需依赖,命令为: yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl- ExtUtils-MakeMaker 耐心等待安装,出现提示输入y即可;

(4)安装依赖时,yum自动安装了Git,需要卸载旧版本Git,命令为: yum remove git 出现提示输入y即可;

(5)进入解压后的文件夹,命令 cd git-2170 ,然后执行编译,命令为 make prefix=/usr/local/git all 耐心等待编译即可;

(6)安装Git至/usr/local/git路径,命令为 make prefix=/usr/local/git install ;

(7)打开环境变量配置文件,命令 vim /etc/profile ,在底部加上Git相关配置信息

# set Git enviroment

export GIT_HOME=/usr/local/git

export PATH=$GIT_HOME/bin:$PATH

(8)git version

9、jenkins安装相应插件

(1)安装源码管理选择git需要的插件git、git-server、git-client、github-api、plain-credentials、github

上传插件的时候可能会报错,可以把插件上传顺序改一下在上传

(2) jenkins设置git的安装路径,点击全局工具配置/usr/local/git/bin/git(whereis git 命令可查看)

(3)windows本地安装git,把代码推送到github(需要在github创建一个仓库),参考自动化测试的 《

(4)jenkins配置源码管理选择git,地址输入github项目地址,账号可以先在jenkins凭据配置中添加github账号

输地址或账号的时候可能会报403的错误。解决办法刷新一下或者 在Configure Global Security中开启 启用代理兼容

(5)配置完源码管理,直接进行构建,代码自动下载到/root/jenkins/workspace/git/路径下

10、接下来需要把buildxml中脚本路径改为/root/jenkins/workspace/git/进行构建,可以在Github里提交一个jmx文件构建一下试试

http://gitblitcom/

https://githubcom/gitblit/gitblit

纯java开发,所以需java环境

windows

Linux/OSx

以${baseFolder}代表gitblit根目录,在${baseFolder}\data目录下有一个名为gitblitproperties的配置文件,用于配置gitblit

执行${baseFolder}\gitblitcmd脚本。

最后输出中出现 表示启动成功

访问 http://127001:8080 https://127001:8443

https证书 参考

在特定的重要动作发生时触发自定义脚本

本地库 git/hooks目录下 默认sample结尾,启用去掉sample

服务端也是在hooks目录下

hooks下文件名 即在触发调用 提交时发生顺序

http://gitblitcom/setup_hookshtml

https://blogcsdnnet/fenglailea/article/details/38084639

管理界面->test版本库->编辑版本库->receive

最后保存到此 自动部署 设置完成

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » CentOS系统上搭建Git版本控制服务器的教程

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情