- 机型:树莓派3B+
- 系统:Raspberry Pi OS(32 bit)
1. 安装git
$ sudo apt-get install git
2. 新建git用户
$ sudo adduser git
3. 创建仓库
$ sudo mkdir -p /data/git
$ cd /data/git
$ sudo git init --bare zifeng.git
已初始化空的 Git 仓库于 /data/git/zifeng.git/
$ sudo chown -R git:git zifeng.git
4. 导入公钥
$ sudo mkdir -p /home/git/.ssh
$ cd /home/git/.ssh/
$ sudo touch authorized_keys
- 收集需要登录git用户的公钥(在id_rsa.pub文件),将其导入authorized_keys文件中
# Windows: Win 10
用git bash打开终端
# Linux: Ubuntu 20.04
sudo apt-get install git
# MacOS: Big Sur
brew install git
# 生成ssh keys
git config --global user.name "xxxxx"
git config --global user.email "xxxxx@email.com"
ssh-keygen -t rsa -C "xxxxx@email.com"
# 将公钥拷贝到树莓派authorized_keys文件中
cat ~/.ssh/id_rsa.pub
5. 克隆git项目
- 项目的地址:ssh://git@ + 地址 + :+ 端口 + 项目所在目录,若端口是默认ssh的22,可省略
# 内网
git clone ssh://git@192.168.1.110:/data/git/zifeng.git
# 外网 假设端口为10000,映射树莓派ssh的22
git clone ssh://git@www.xxx.com:10000/data/git/zifeng.git
6. 禁止git用户shell登录
- 最后,处于安全考虑,git用户不允许登录shell
$ cat /etc/passwd
...
git:x:1001:1001:,,,:/home/git:/bin/bash
$ sudo vim /etc/passwd
$ cat /etc/passwd
...
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell