Linux 系统下 Git 的详细安装步骤和基础设置指南


在这里插入图片描述



一、安装 Git

1. Debian/Ubuntu 系统

# 更新软件包列表
sudo apt update

# 安装 Git
sudo apt install git -y

# 验证安装
git --version

• 输出示例:git version 2.39.0


2. CentOS/RHEL 系统

# 启用 EPEL 仓库(若未启用)
sudo yum install epel-release -y

# 安装 Git
sudo yum install git -y

# 或使用 dnf(CentOS 8+)
sudo dnf install git -y

# 验证安装
git --version

3. Fedora 系统

# 使用 dnf 安装
sudo dnf install git -y

# 验证安装
git --version

4. Arch/Manjaro 系统

# 使用 pacman 安装
sudo pacman -Syu git -S

# 验证安装
git --version

5. 其他方式:源码编译安装(适用于所有发行版)

  1. 安装依赖:

    # Debian/Ubuntu
    sudo apt install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y
    
    # CentOS/RHEL
    sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y
    
  2. 下载并解压 Git 源码:

    wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.39.0.tar.gz
    tar -zxvf git-2.39.0.tar.gz
    cd git-2.39.0
    
  3. 编译并安装:

    make prefix=/usr/local all
    sudo make prefix=/usr/local install
    
    # 验证安装
    git --version
    

二、基础配置

1. 设置全局用户名和邮箱

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

# 验证配置
git config --global --list

2. 配置 SSH 密钥(用于 GitHub/GitLab 等)

  1. 生成 SSH 密钥:

    ssh-keygen -t ed25519 -C "your.email@example.com"
    

    • 按提示保存密钥到默认路径(~/.ssh/id_ed25519)。
    • 设置密钥密码(可选)。

  2. 将公钥添加到 GitHub/GitLab:
    • 复制公钥内容:

    cat ~/.ssh/id_ed25519.pub
    

    • 登录 GitHub → Settings → SSH and GPG Keys → 添加新 SSH Key。

  3. 测试 SSH 连接:

    ssh -T git@github.com
    

    • 成功提示:Hi username! You've successfully authenticated.


3. 配置 Git 别名(简化命令)

git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.st status
git config --global alias.lg "log --oneline --graph --all"

• 示例:git st 等同于 git status


4. 启用自动换行符转换(解决跨平台换行符问题)

git config --global core.autocrlf input    # Linux/macOS
git config --global core.safecrlf warn     # 检测混合换行符

三、高级设置

1. 配置差异工具(如 Meld)

  1. 安装 Meld:

    # Debian/Ubuntu
    sudo apt install meld -y
    
    # CentOS/RHEL
    sudo yum install meld -y
    
  2. 配置 Git 调用 Meld:

    git config --global merge.tool meld
    git config --global mergetool.meld.path "/usr/bin/meld"
    

2. 配置 Git 代理(解决网络问题)

# HTTP/HTTPS 代理
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy https://127.0.0.1:7890

# SOCKS5 代理(如 Clash)
git config --global http.proxy socks5://127.0.0.1:7890
git config --global https.proxy socks5://127.0.0.1:7890

# 取消代理
git config --global --unset http.proxy
git config --global --unset https.proxy

3. 配置钩子(Hooks)自动化操作

  1. 示例:在提交前运行代码检查
    • 进入仓库的 .git/hooks 目录:
    cd /path/to/repo/.git/hooks
    
    • 创建 pre-commit 文件:
    #!/bin/sh
    echo "Running code checks..."
    npm test  # 示例:运行测试
    
    • 赋予执行权限:
    chmod +x pre-commit
    

四、常见问题与解决方法

1. 安装失败:E: Unable to locate package git

• 解决:更新软件源并重试:

sudo apt update && sudo apt install git -y

2. 权限错误:Permission denied (publickey)

• 解决:

  1. 确认 SSH 密钥已添加到 ssh-agent
    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_ed25519
    
  2. 检查公钥是否正确添加到 GitHub/GitLab。

3. Git 版本过旧

• 升级 Git:

# Debian/Ubuntu
sudo add-apt-repository ppa:git-core/ppa -y
sudo apt update && sudo apt upgrade git -y

# Fedora
sudo dnf upgrade git -y

4. 终端提示 git: command not found

• 解决:
• 检查是否已安装:which git
• 若未安装,通过上述方法重新安装。
• 确保 Git 路径在环境变量中(echo $PATH)。


五、卸载 Git

1. 通过包管理器卸载

• Debian/Ubuntu:

sudo apt remove git -y

• CentOS/RHEL:

sudo yum remove git -y

2. 手动卸载(源码安装)

sudo rm -rf /usr/local/bin/git
sudo rm -rf /usr/local/share/doc/git

六、学习资源推荐

  1. Pro Git 电子书(免费):
    https://git-scm.com/book/zh/v2
  2. GitHub 官方教程:
    https://guides.github.com/
  3. Git 命令速查表:
    https://education.github.com/git-cheat-sheet-education.pdf

通过以上步骤,您可以在 Linux 系统上快速安装并配置 Git,满足日常开发需求!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

独隅

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值