在centos7上部署属于自己的git服务器

  • ~2.33K 字
  • 0 次阅读 次阅读
  • 0 评论 条评论
  1. 1. 服务端配置
    1. 1.1. 1.安装 Git
    2. 1.2. 2.创建 Git 的专属管理账户和密码
    3. 1.3. 3.创建git仓库
    4. 1.4. 4.配置账户免密码登录
    5. 1.5. 5.禁止客户端 shell 登录
  2. 2. 客户端
    1. 2.1. 同一服务器上使用(以下均用root用户创建)
    2. 2.2. window下使用
  3. 3. 参考资料

本文将详细介绍如何在centos7上部署属于自己的git服务器

服务端配置

1.安装 Git

1
yum –y install git

2.创建 Git 的专属管理账户和密码

1.创建 Git 账户:

1
adduser git

2.设置 Git 账户的密码:

1
passwd git

3.创建git仓库

1
2
3
4
su git
cd /home/git
mkdir test.git && cd test.git
git init --bare

4.配置账户免密码登录

1.创建 ssh 的默认目录

1
2
cd /home/git
mkdir .ssh

2.创建校验公钥的配置文件

1
2
3
4
cd /home/git/.ssh
touch authorized_keys
chmod 700 /home/git/.ssh/
chmod 600 /home/git/.ssh/authorized_keys

5.禁止客户端 shell 登录

注意:如果 git 客户端可以直接通过 shell 使用 git 账户来远程登录服务器,这样是不安全的

1
2
3
4
su git
mkdir /home/git/git-shell-commands
su root
vim /etc/passwd

找到

1
git:x:1000:1000::/home/git:/bin/bash

其中1000可能为其他数字,然后将原来的那一行注释,然后复制一行出来改成

1
git:x:1000:1000::/home/git:/bin/git-shell

修改完后退出保存: esc 进入命令模式, 输入::wq! 保存退出。

PS:禁用后无法通过shell去登录git账号创建仓库,需要用root账号进行以下步骤:

1
2
3
mkdir test.git  && cd test.git
git init --bare
chown -R git /home/git/test.git #把文件夹所有者赋予git用户

客户端

同一服务器上使用(以下均用root用户创建)

1.设置用户名和邮箱

1
2
git config --global user.name "client_username"
git config --global user.email "[email protected]"

2.创建ssh keys

1
2
cd ~/.ssh
ssh-keygen -t rsa -C "[email protected]"

碰到需要输入的地方直接按回车键,最后等待创建成功
3.将生成的文件复制到 git 目录下

1
cp /root/.ssh/id_rsa.pub /home/git/.ssh/test.pub

4.将 test.pub 文件中的内容追加到 authorized_keys

1
2
cd /home/git/.ssh
cat test.pub >> authorized_keys

5.使用

1
2
3
cd ~
mkdir test_project && cd test_project
git clone [email protected]:/home/git/test.git

到此即可自行添加文件并push测试

window下使用

1.安装 Windows 版 Git 工具(请下载后请自行安装,这里不作赘述,下载地址
2.客户端配置

1
2
git config --global user.name "client_username"
git config --global user.email "[email protected]"

3.在路径C:\Users\您的用户名下创建.ssh文件夹,如果原来已存在则不需要
4.创建私钥(同服务端)

1
ssh-keygen -t rsa -C "[email protected]"

5.手动将公钥添加到服务器中,可用以下命令

1
scp ./id_rsa.pub root@你的ip地址:/home/git/.ssh/pc.pub

6.登录服务器,将刚上传的 pc.pub 文件中的内容追加到 authorized_keys

1
2
cd /home/git/.ssh
cat test.pub >> authorized_keys

7.使用
7.1 安装TortoiseGit 下载地址
7.2 安装完毕后clone,地址填git@ip地址:/home/git/test.git即可,如果提示需要密码则进行以下操作

8.配置TortoiseGit
8.1 打开C:\Users\您的用户名\.ssh
8.2 复制私钥文件id_rsa,将复制的文件的文件名改为id_rsa.ppk
8.3 打开TortoiseGit的安装目录,找到puttygen.exe,双击运行。
8.4 点击Load,加载刚才复制的id_rsa.ppk文件,点击确定。
8.5 Load完毕后点击Save private key,弹窗选择是,将私钥保存为TortoiseGit.ppk
8.6 在项目目录下,右键选择TortoiseGit(T)-->设置,打开设置界面。
8.7 选中git下的Remote(远端)->选泽origin->Putty Key(Putty 密钥)选中刚刚保存的TortoiseGit.ppk,应用并确定即可
这时候pull或者push都不会再要求输入密码了

参考资料

搭建
小乌龟设置

打赏
打赏提示信息
分享
分享提示信息