Git服务器端与客户端搭建详解

需积分: 9 14 下载量 94 浏览量 更新于2024-09-09 收藏 2KB TXT 举报
本篇文档详细介绍了如何在服务器端和客户端进行Git服务器的搭建过程。首先,我们从服务器端开始: 1. 安装Git:确保服务器环境已具备基本的Linux或类Linux系统,通过命令`sudo apt-get install git`来安装Git,这是分布式版本控制系统的基础。 2. 创建Git用户:为了保护Git服务的安全性,需要创建一个专门的git用户,使用命令`sudo adduser git`,并设置该用户只允许通过SSH访问,而不能登录shell。编辑`/etc/passwd`将git用户的shell路径改为`/usr/bin/git-shell`。 3. 证书登录与权限管理:为确保安全,使用公钥认证,收集客户端用户的公钥(id_rsa.pub)文件,将其添加到服务器的`/home/git/.ssh/authorized_keys`文件中,确保每个用户只能通过其公钥访问。仓库所有权设置为git,如`sudo chown -R git:git sample.git`。 4. 初始化Git仓库:选择一个目录作为Git仓库,例如`/srv/sample.git`,并使用`sudo git init --bare sample.git`命令创建裸仓库,不包含工作区,仅用于版本控制。 5. 禁止shell登录:为了进一步增强安全性,修改git用户的shell配置,使其不能登录shell环境。 在客户端,搭建步骤如下: 1. 安装Git:在客户端机器上安装Git,这对于本地开发人员来说是必不可少的,可以从官方网站下载对应系统的包进行安装。 2. 生成SSH公钥对:在Git Bash或其他终端中运行`ssh-keygen`命令,生成公钥(id_rsa)和私钥(id_rsa.pub),私钥应保密,而公钥则用于与服务器交互。 3. 发送公钥到服务器:在客户端,使用`ssh-copy-id -i ~/.ssh/id_rsa.pub user@server_ip`命令将公钥复制到服务器的远程用户目录的.ssh/authorized_keys文件中,以便服务器验证身份。 4. SourceTree配置:对于使用图形化工具SourceTree的开发者,需在工具>选项中设置SSH客户端为OpenSSH,并勾选"Nonewlineatendoffile"选项,以避免在文件传输时出现额外的换行符。 总结起来,本文档涵盖了Git服务器端的认证、权限管理和仓库初始化,以及客户端的SSH密钥生成和与服务器的对接,为Git项目管理提供了完整的基础配置指南。