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

在这里插入图片描述


MacOS 系统下 Git 的详细安装步骤与基础设置指南—目录

  • 一、安装 Git
    • 方法 1:通过 Homebrew 安装(推荐)
    • 方法 2:通过 Xcode Command Line Tools 安装
    • 方法 3:手动下载安装包
  • 二、基础配置
    • 1. 设置全局用户名和邮箱
    • 2. 配置 SSH 密钥(用于 GitHub/GitLab 等)
    • 3. 配置 Git 别名(简化命令)
    • 4. 启用 Git 自动换行符转换
  • 三、高级设置
    • 1. 配置差异工具(如 Beyond Compare)
    • 2. 配置 Git 代理(解决网络问题)
  • 四、常见问题与解决方法
    • 1. 安装失败:`Error: The following directories are not writable by your user`
    • 2. 权限错误:`Permission denied (publickey)`
    • 3. Git 版本过旧
    • 4. 终端提示 `git: command not found`
  • 五、卸载 Git
  • 六、学习资源推荐



一、安装 Git

方法 1:通过 Homebrew 安装(推荐)

  1. 安装 Homebrew(若未安装):

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    

    • 安装完成后,重启终端。

  2. 通过 Homebrew 安装 Git:

    brew install git
    
  3. 验证安装:

    git --version
    

    • 输出类似 git version 2.39.0 表示成功。


方法 2:通过 Xcode Command Line Tools 安装

  1. 安装 Xcode Command Line Tools:

    xcode-select --install
    

    • 系统会弹出图形化安装界面,按提示完成安装。

  2. 验证 Git 是否自带安装:

    git --version
    

    • MacOS 默认会安装 Git,但版本可能较旧(如 2.37.0)。


方法 3:手动下载安装包

  1. 访问 Git 官网下载页面:
    https://git-scm.com/download/mac
  2. 下载 .dmg 文件(如 git-2.39.0-intel-universal-mavericks.dmg)。
  3. 挂载并安装:
    • 双击下载的 .dmg 文件,将 Git.app 拖入 Applications 文件夹。
  4. 配置环境变量:
    # 将 Git 添加到 PATH(若手动安装未自动配置)
    echo 'export PATH="/Applications/Git.app/Contents/Resources/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    

二、基础配置

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 自动换行符转换

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

三、高级设置

1. 配置差异工具(如 Beyond Compare)

  1. 安装 Beyond Compare(需购买或下载试用版)。
  2. 配置 Git 调用 Beyond Compare:
    git config --global merge.tool bc3
    git config --global mergetool.bc3.path "/Applications/Beyond Compare.app/Contents/MacOS/bcomp"
    

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

四、常见问题与解决方法

1. 安装失败:Error: The following directories are not writable by your user

• 解决:使用 sudo 或修复目录权限:

sudo chown -R $(whoami) /usr/local/*

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

• 解决:

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

3. Git 版本过旧

• 升级 Git:

brew update && brew upgrade git

4. 终端提示 git: command not found

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


五、卸载 Git

# 通过 Homebrew 卸载
brew uninstall git# 手动删除(若通过 dmg 安装)
sudo rm -rf /Applications/Git.app
sudo rm -rf /usr/local/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

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


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/77120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文读懂 AI

2022年11月30日,OpenAI发布了ChatGPT,2023年3月15日,GPT-4引发全球轰动,让世界上很多人认识了ai这个词。如今已过去快两年半,AI产品层出不穷,如GPT-4、DeepSeek、Cursor、自动驾驶等,但很多人仍…

【教程】检查RDMA网卡状态和测试带宽 | 附测试脚本

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 目录 检查硬件和驱动状态 测试RDMA通信 报错修复 对于交换机的配置,可以看这篇: 【教程】详解配置多台主机通过交换机实现互…

计算机网络 - TCP协议

通过一些问题来讨论 TCP 协议 什么是 TCP ?举几个应用了 TCP 协议的例子TCP协议如何保证可靠性?tcp如何保证不会接受重复的报文?Tcp粘包拆包问题了解吗?介绍一下,如何解决?TCP拥塞控制与流量控制区别&…

Fiddler 进行断点测试:调试网络请求

目录 一、什么是断点测试? 二、Fiddler 的断点功能 三、如何在 Fiddler 中设置断点? 步骤 1:启动 Fiddler 步骤 2:启用断点 步骤 3:捕获请求 步骤 4:修改请求或响应 四、案例:模拟登录失…

OpenCv高阶(三)——图像的直方图、图像直方图的均衡化

目录 一、直方图 1、计算并显示直方图 2、使用matplotlib方法绘制直方图(不划分小的子区间) 3、使用opencv的方法绘制直方图 (划分16个小的子亮度区间) 4、绘制彩色图像的直方图,将各个通道的直方图值都画出来 二、…

Flutter 与原生通信

Flutter 与原生之间的通信主要基于通道机制,包括 MethodChannel、EventChannel 和 BasicMessageChannel。 MethodChannel:用于 Flutter 与原生之间的方法调用,实现双向通信,适合一次性的方法调用并获取返回值,如 Flut…

前端面试-Vue篇

核心概念 Vue 3的响应式原理与Vue 2有何本质区别?Vue中虚拟DOM的diff算法优化策略有哪些?Vue组件间通信方式有哪些?适用场景分别是什么?Vue的生命周期钩子在Composition API中如何替代?Vue的模板编译过程是怎样的&…

光刻机研发与市场现状分析报告

1. 引言 光刻机(Lithography Machine)是半导体制造的核心设备,其技术水平和市场供应能力直接影响全球芯片产业的发展。随着人工智能(AI)、5G、高性能计算(HPC)和自动驾驶等技术的兴起&#xff0…

Missashe考研日记-day21

Missashe考研日记-day21 1 专业课408 学习时间:4h学习内容: 今天先把昨天学的内容的课后习题做了,整整75道啊,然后学了OS第二章关于CPU调度部分的内容,这第二章太重要了,以至于每一小节的内容都比较多&am…

【玩转全栈】—— Django+vue3+讯飞星火API 实现前端页面实时AI答复

技术栈:vue3 element-plus axios pinia router Django5 websocket 讯飞星火API 本文将实现一个 AI 聊天对话功能,将前端用户输入问题以及之前对话发送给后端,通过 api 访问大模型,返回前端实时对话数据。 调用 讯飞星火API…

广东广州一家IPO资产重组疑点重重,信息披露真实性存疑

作者:Eric 来源:IPO魔女 4月18日,广州瑞立科密汽车电子股份有限公司(简称“瑞立科密”)将接受深交所主板IPO上会审核。公司保荐机构为中信证券,拟募集资金为15.2162亿元。 瑞立科密过往资产重组疑点重重&a…

银河麒麟(Kylin) - V10 SP1桌面操作系统ARM64编译QT-5.15.12版本

银河麒麟(Kylin) - V10 SP1桌面操作系统ARM64编译QT-5.15.12版本 原因 测试Kylin-Desktop-V10-SP1-General-Release-2303-arm64系统下,编译QT-5.15.12版本已做测试。 测试环境 测试板配置 型号:LM-D2000-NONE-1w-V01-pc_A2150 CPU:飞腾D20…

查看前端项目依赖树型结构关系图的详细方法,涵盖 命令行工具 和 可视化工

以下是查看前端项目依赖树型结构关系图的详细方法&#xff0c;涵盖 命令行工具 和 可视化工具&#xff1a; 一、命令行工具生成依赖树 1. npm # 查看项目依赖树&#xff08;文本形式&#xff09; npm ls# 查看指定包的依赖树 npm ls <package-name># 生成JSON格式的依…

Ollama高并发测试

本文主要来测试一下ollama的高并发能力。 具体配置如下&#xff1a; 一、Ollama默认参数执行 我们打开4个窗口&#xff0c;然后分别让DeepSeek “给我讲一个笑话” &#xff0c;看下不同窗口的答题顺序。 通过答题顺序可以看到&#xff0c;在不进行参数设置时&#xff0c;模…

资源管理与HPA:让Kubernetes应用自动伸缩

引言&#xff1a;从“手动挡”到“自动驾驶” 想象我们驾驶一辆汽车&#xff0c;手动调节油门和换挡不仅费力&#xff0c;还难以应对突发状况。我们的应用服务也一样&#xff0c;在面对突然的流量增长&#xff0c;内存使用暴涨该如何应对。HPA&#xff08;Horizontal Pod Auto…

Windows 下 MongoDB ZIP 版本安装指南

在开发和生产环境中&#xff0c;MongoDB 是一种非常流行的 NoSQL 数据库&#xff0c;以其灵活性和高性能而受到开发者的青睐。对于 Windows 用户来说&#xff0c;MongoDB 提供了多种安装方式&#xff0c;其中 ZIP 版本因其灵活性和轻量级的特点&#xff0c;成为很多开发者的首选…

【Linux网络与网络编程】11.数据链路层mac帧协议ARP协议

前面在介绍网络层时我们提出来过一个问题&#xff1a;主机是怎么把数据交给路由器的&#xff1f;那里我们说这是由数据链路层来做的。 网络上的报文在物理结构上是以mac帧的形式流动的&#xff0c;但在逻辑上是以IP流动的&#xff0c;IP的流动是需要mac帧支持的。 数据链路层解…

多模态思维链AI医疗编程:从计算可持续性到开放域推理的系统性解决方案

多模态思维链AI医疗编程:从计算可持续性到开放域推理的系统性解决方案 医疗AI领域的多模态思维链技术正在重塑临床决策支持、医学影像分析和医疗流程优化的范式。本指南从计算可持续性、错误传播控制、伦理安全防护和通用性扩展四大维度,系统解析医疗大模型落地落地的关键要…

代理模式深度解析

目录 一 静态代理 1.1 优点 1.2 缺点 1.3 适用场景 二 JDK动态代理 1 JDK动态代理的工作原理 1.1 创建代理类 1.2 加载代理类 1.3 实现方法调用 2. Proxy.newProxyInstance() 的核心工作流程 方法签名 工作步骤 3. 代理类的生成与加载 3.1 代理类生成的关键方法 …

Spring Cache与Redis集成原理

一、核心架构图解 #mermaid-svg-aiWGQLhmWx7kOfLz {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-aiWGQLhmWx7kOfLz .error-icon{fill:#552222;}#mermaid-svg-aiWGQLhmWx7kOfLz .error-text{fill:#552222;stroke:#5…