linux下git环境搭建

搭建环境:

服务器 CentOS7.4git(version 1.8.3.1)
客户端 Windows8git(version 2.19.1)

1. 安装Git相关软件

Linux是服务器端系统,Windows作为客户端系统,分别安装Git。

#linux环境下安装服务端:

yum install -y git

#安装完毕后查看版本

git --version

在这里插入图片描述

下载 Git for Windows,地址:https://git-for-windows.github.io/

win版安装完之后,可以使用Git Bash作为命令行客户端。

注意:如果直接下一步下一步安装的话,默认路径会生成在桌面,建议修改安装路径地址!!

右键桌面,找到git bash选项
在这里插入图片描述

git --version
git version 2.19.1.windows.1    //安装完之后,查看Git版本

在这里插入图片描述

服务器端(linux下)安装Gitosis
git clone https://github.com/res0nat0r/gitosis.git
在这里插入图片描述

yum install python-setuptools -y
cd gitosis

在这里插入图片描述

python setup.py install

出现下面的信息表示安装成功了
在这里插入图片描述

2. 服务器端创建git用户来管理Git服务(linux下)

查看git用户是否存在

id git

在这里插入图片描述

创建git用户**(特别注意,这里git用户建议一定要用强密码,否则就会出现后面的情况,我这里的测试环境用123作为密码,生成环境切不可!!!!!!!!!)**

useradd git
echo "123" | passwd --stdin git
su - git  

3. 配置公钥

Windows

配置管理者,git服务器需要一些管理者,通过上传开发者机器的公钥到服务器,添加成为git服务器的管理者,打开git命令行
#生成公匙

ssh-keygen -t rsa

在这里插入图片描述

#复制到git服务器上

scp ~/.ssh/id_rsa.pub git@192.168.1.1:~  

在这里插入图片描述

4. 配置gitosis ( linux上)

使用git用户并初始化gitosis

cd .ssh
gitosis-init < ./id_rsa.pub

在这里插入图片描述

#添加权限

chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

在Windows上机器上clone gitosis-admin到管理者主机(以下在win机器上操作)

说明:gitosis.conf: git服务器配置文件
keydir: 存放客户端公钥

git clone ssh://git@192.168.1.1:22/home/git/repositories/gitosis-admin.git

在这里插入图片描述

cd gitosis-admin
ls

在这里插入图片描述
配置gitosis.conf文件

vim gitosis.conf
[group gitosis-admin]    #组名称
members = git@iz2ze6pdfsjapodlijunstz    #组成员
writable = gitosis-admin    #项目名称

[group test]   //这里添加了"test"项目组,上传到个git服务器
members = git@iz2ze6pdfsjapodlijunstz
writable = test

在这里插入图片描述

在 /home/git/ 下创建目录 .ssh****(linux下)****

pwd /home/git
mkdir .ssh
 ls -a 

确认 .ssh 文件夹的 owner 修改为 git

 ll -a

在这里插入图片描述

5.将客户端公钥导入服务器端 /home/git/.ssh/authorized_keys 文件(win下)

回到 Git Bash 下,导入文件:

ssh git@192.168.1.1 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub

需要输入服务器端 git 用户的密码
在这里插入图片描述

回到服务器端(linux),查看 .ssh 下是否存在 authorized_keys 文件:

cd .ssh
 ll

可以查看一下是否是客户端生成的公钥。
在这里插入图片描述

重要:
修改 .ssh 目录的权限为 700
修改 .ssh/authorized_keys 文件的权限为 600
在这里插入图片描述

6.客户端再次 clone 远程仓库(win)

git clone git@192.168.1.1:/home/git/repositories/gitosis-admin.git

查看客户端项目目录:
在这里插入图片描述
项目已经 clone 了。

也可以使用 tortoiseGit 客户端来管理项目:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

7.linux服务器禁止 git 用户 ssh 登录服务器!!必须做

之前在服务器端(linux)创建的 git 用户不允许 ssh 登录服务器

编辑 /etc/passwd

vi /etc/passwd

在这里插入图片描述
找到:

git:x:502:504::/home/git:/bin/bash

修改为

git:x:502:504::/home/git:/bin/git-shell

此时 git 用户可以正常通过 ssh 使用 git,但无法通过 ssh 登录系统。

8.到此git服务器就搭建完毕了,此 URL是git的命令大全http://t.cn/RCwqbg9,可进行参考使用。

9.注意事项

(1)由于搭建git既涉及到服务端,又涉及到客户端,所以在搭建的时候一定要注意哪步是在Linux下搭建的,哪步是在win下操作的!!!!!这里我为了方便大家区分,每一步都标明了是在那个环境下执行操作!请仔细查看!~~~~~

(2)第七步服务器禁止 git 用户 ssh 登录服务器必须要做(如果你的git放在了网上,一定要必须做此操作),为什么吗??好吧,我告诉你,我的测试环境仅仅是在阿里云上面的测试环境中搭建的,好吗,这就有闲着蛋疼的人开始了,我猜他们一定是没什么事干。
见图:
在这里插入图片描述
大半夜2点多在暴力破解我的git用户(当时手机的短信一直哇哇的告警啊。。。。),还好我这仅仅是测试环境,还好我做了安全防护的内容,如果这是你的真实环境,那想想会有什么后果呢?????

好,git的搭建就讲到这里!~~~~~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值