好的,成功在服务器上设置后,从你的本地个人电脑上克隆和管理 gitolite-admin
仓库的操作步骤如下:
第一步:将私钥从服务器复制到本地电脑
首先,你需要把刚才在服务器上生成的私钥文件 ~/.ssh/zhy
安全地复制到你的本地电脑上。
方法A:使用 scp
命令(推荐)
在你的本地电脑的终端中执行:
# 将 your-server-ip 替换为你的Gitolite服务器的IP地址或域名
# 将 git 替换为你安装Gitolite的系统用户名(如果不同的话)
scp git@your-server-ip:~/.ssh/zhy ~/.ssh/
scp git@your-server-ip:~/.ssh/zhy.pub ~/.ssh/ # 公钥通常不需要,但可以一并复制
方法B:手动复制内容
- 在服务器上:
cat ~/.ssh/zhy
- 复制输出的全部内容
- 在本地电脑上:
nano ~/.ssh/zhy
- 粘贴内容,保存退出
第二步:设置本地私钥的权限
在你的本地电脑上,设置正确的文件权限(非常重要,SSH不会接受权限太开放的密钥):
chmod 600 ~/.ssh/zhy
第三步:配置SSH客户端
告诉你的本地SSH,连接Gitolite服务器时使用这个特定的密钥。
编辑或创建 ~/.ssh/config
文件:
nano ~/.ssh/config
添加以下内容(将 your-server-ip
替换为你的实际服务器地址):
Host my-gitolite-server
HostName your-server-ip # 服务器IP或域名
User git # 服务器上的用户名
IdentityFile ~/.ssh/zhy # 私钥路径
IdentitiesOnly yes # 只使用指定的密钥
保存并退出。
第四步:测试连接
在你的本地电脑上测试SSH连接是否正常工作:
ssh -T my-gitolite-server
如果成功,你会看到类似这样的欢迎信息:
hello admin, this is git@server running gitolite3 v3.6.12-0-g5d5f1d7 on git 2.25.1
R W gitolite-admin
R W testing
第五步:克隆管理仓库
现在你可以克隆 gitolite-admin
仓库来进行管理了:
git clone my-gitolite-server:gitolite-admin.git
或者使用完整地址(如果你没有配置SSH):
git clone git@your-server-ip:gitolite-admin.git
这会在当前目录下创建一个 gitolite-admin
文件夹。
第六步:管理用户和权限
进入克隆的仓库目录:
cd gitolite-admin
这个仓库包含两个重要目录:
-
conf/
- 存放权限配置文件 (gitolite.conf
) -
keydir/
- 存放用户的公钥文件
添加新用户示例:
- 将新用户的公钥文件(如
john.pub
)放入keydir/
文件夹 - 编辑
conf/gitolite.conf
文件配置权限 - 提交并推送更改:
git add . git commit -m "添加新用户john并设置权限" git push origin master
推送成功后,Gitolite会自动应用新的配置,新用户就可以访问了。