当前位置: 首页 > article >正文

Mac新手必看:保姆级Git+SourceTree配置指南,从SSH密钥到拉取代码一气呵成

Mac开发者入门Git与SourceTree全流程配置实战手册刚接触开发的Mac用户往往会在配置开发环境时遇到各种小坑。记得我第一次在Mac上配置Git和SourceTree时花了整整一个下午才搞明白为什么SSH连接总是失败。本文将带你避开这些陷阱从零开始完成Git环境搭建、SSH密钥配置到SourceTree仓库管理的完整流程。1. 环境准备与Git基础配置在开始之前我们需要确保Mac系统已经安装了必要的工具链。打开终端Terminal输入以下命令检查Git是否已安装git --version如果系统返回类似git version 2.32.0的版本信息说明Git已经安装。否则我们需要先安装Git。推荐通过Homebrew安装最新版本brew install git安装完成后我们需要进行基本的Git全局配置。这些信息将用于你未来的每一次代码提交git config --global user.name 你的姓名 git config --global user.email 你的邮箱 git config --global core.editor code --wait # 使用VS Code作为默认编辑器提示邮箱地址应该与你使用的代码托管平台如GitHub、Gitee注册邮箱一致否则贡献统计可能无法正确关联。为了验证配置是否生效可以运行git config --global --list2. SSH密钥生成与托管平台配置SSH密钥是安全连接代码托管平台的核心。我们将生成一对密钥公钥和私钥并将公钥添加到托管平台账户中。在终端执行以下命令生成SSH密钥对ssh-keygen -t ed25519 -C 你的邮箱系统会提示你选择密钥保存位置默认~/.ssh/id_ed25519和设置密码。建议保持默认位置设置一个强密码可选但推荐将密码保存在Mac钥匙串中方便后续使用生成完成后查看并复制公钥内容cat ~/.ssh/id_ed25519.pub | pbcopy现在将公钥添加到你的代码托管平台GitHubSettings → SSH and GPG keys → New SSH keyGitee设置 → SSH公钥 → 添加公钥添加完成后测试连接是否成功ssh -T gitgithub.com # 测试GitHub ssh -T gitgitee.com # 测试Gitee第一次连接时会提示验证主机密钥输入yes继续。成功后会显示欢迎信息。3. SSH配置优化与问题排查为了让SSH体验更顺畅我们需要进行一些优化配置。创建或编辑~/.ssh/config文件nano ~/.ssh/config添加以下内容Host * AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_ed25519常见问题及解决方案权限问题chmod 600 ~/.ssh/config chmod 600 ~/.ssh/id_ed25519Host key验证失败ssh-keygen -R github.com # 清除旧密钥代理问题eval $(ssh-agent -s) ssh-add --apple-use-keychain ~/.ssh/id_ed255194. SourceTree安装与基础配置SourceTree是Mac上优秀的Git图形化客户端。从官网下载后首次运行需要登录Atlassian账户可免费注册。安装完成后进行初始设置在Preferences → Git中确认Git路径在Preferences → Diff中选择对比工具在Preferences → General中设置默认存储位置注意SourceTree可能会请求访问钥匙串中的SSH密钥选择始终允许以避免重复输入密码。5. 使用SourceTree管理Git仓库让我们通过一个完整的工作流来熟悉SourceTree的基本操作。克隆现有仓库点击Clone按钮输入仓库URL如gitgithub.com:user/repo.git选择本地存储路径点击Clone完成创建新仓库点击Create按钮选择本地文件夹勾选Create a repository选项点击Create完成初始化基础工作流SourceTree界面主要分为以下几个区域左侧面板仓库列表、分支列表等中间面板文件状态、提交历史等右侧面板差异对比、提交信息等典型工作流程修改文件后文件会出现在未暂存文件区域勾选要提交的文件填写提交信息点击提交按钮完成本地提交点击推送按钮将更改同步到远程仓库6. 高级配置与实用技巧多账户管理如果你需要同时使用多个Git账户如公司和个人账户可以通过SSH配置实现# ~/.ssh/config Host github.com-personal HostName github.com User git IdentityFile ~/.ssh/id_ed25519_personal Host github.com-work HostName github.com User git IdentityFile ~/.ssh/id_ed25519_work克隆仓库时使用对应的主机别名git clone gitgithub.com-personal:user/repo.gitGit钩子自动化在仓库的.git/hooks目录中添加脚本可以实现自动化操作。例如添加pre-commit钩子可以在提交前运行测试#!/bin/sh npm testSourceTree自定义操作在Preferences → Custom Actions中添加常用命令如名称Run Tests脚本npm test参数$REPO工作目录$REPO7. 常见问题深度解决方案SSH连接超时如果遇到SSH连接超时问题可能是网络限制导致。尝试以下方法测试SSH连接详细日志ssh -vT gitgithub.com修改SSH配置使用443端口Host github.com Hostname ssh.github.com Port 443SourceTree卡顿问题大型仓库可能导致SourceTree性能下降可以在Preferences → Git中启用Git GC定期执行仓库维护git gc --aggressive限制历史记录加载数量文件权限问题Mac和Linux系统对文件权限敏感可能导致脚本无法执行。修复方法git config core.fileMode false # 忽略文件权限变化或者在SourceTree中Preferences → Git → 取消勾选Track file mode changes经过这些配置后你的Mac开发环境应该已经准备就绪。在实际使用中建议定期备份~/.ssh目录和重要的Git配置。遇到问题时记住Git的--help参数和SourceTree的日志功能都是很好的排错工具。

相关文章:

Mac新手必看:保姆级Git+SourceTree配置指南,从SSH密钥到拉取代码一气呵成

Mac开发者入门:Git与SourceTree全流程配置实战手册 刚接触开发的Mac用户往往会在配置开发环境时遇到各种"小坑"。记得我第一次在Mac上配置Git和SourceTree时,花了整整一个下午才搞明白为什么SSH连接总是失败。本文将带你避开这些陷阱&#xf…...

Livox-ros-driver2安装后,如何快速验证你的HAP/Mid-360雷达数据流(ROS1/ROS2通用)

Livox-ros-driver2安装后快速验证HAP/Mid-360雷达数据流指南(ROS1/ROS2通用) 当你按照官方文档完成Livox-ros-driver2的安装后,最迫切的问题往往是:我的雷达真的工作了吗?数据流是否正常?本文将带你快速验证…...

线程安全 ≠ 协程安全:当全局缓存同时遇上线程池和 async,优秀 Python 工程师该如何设计?

线程安全 ≠ 协程安全:当全局缓存同时遇上线程池和 async,优秀 Python 工程师该如何设计? Python 让很多人第一次感受到编程的温柔:语法简洁,生态丰富,既能写 Web 服务,也能做数据分析、自动化脚…...

SYS_NC00002$之类的列

参考文档: https://askmaclean.com/archives/oracle-virtual-column.html System Generatedcolumn Names inDBA IND COLUMNS KB836884 IMPDP Fails With ORA-14148 When Moving Tables Between 10g And 12c Instances When Optimization Is In Use KB181188 R…...

Cursor Free VIP破解工具:三步解决AI编程助手试用限制的终极方案

Cursor Free VIP破解工具:三步解决AI编程助手试用限制的终极方案 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reache…...

英文论文降AI率好难啊,改了一晚上AI率还增加了16%,到底怎么降AI率啊?

英文论文降AI率比中文AI率还要难降。 最可怕的是,现在很多同学自己写的英文论文,用翻译软件翻译成中文,结果去检测还是有AI率! 为什么? 因为现在的很多翻译软件也开始AI化了! 任何产品都在搞AI&#xf…...

终极屏幕翻译神器:Translumo让你的Windows电脑瞬间打破语言壁垒

终极屏幕翻译神器:Translumo让你的Windows电脑瞬间打破语言壁垒 【免费下载链接】Translumo Advanced real-time screen translator for games, hardcoded subtitles in videos, static text and etc. 项目地址: https://gitcode.com/gh_mirrors/tr/Translumo …...

量子增强神经辐射场(QNeRF)技术解析与应用

1. 量子增强神经辐射场(QNeRF)技术解析 量子计算与神经辐射场的结合正在重塑计算机视觉领域的3D重建范式。传统NeRF通过多层感知机(MLP)建立3D坐标到颜色和密度的映射,其核心公式可表示为: F_θ : (x, d) → (c, σ) 其中θ代表网络参数,x∈…...

【AI Infra 核心】端到端 AI Infra 工程师的炼丹炉:从内核系统到上层框架的调优全景图

🚀【AI Infra 核心】端到端 AI Infra 工程师的炼丹炉:从内核系统到上层框架的调优全景图摘要:我们的连载已经来到了第 9 篇。前面我们手撕了显存池、无锁队列、PagedAttention 和量化算法,一直在“盲人摸象”式地深挖各个底层技术…...

避开Unity PS5开发第一个大坑:手把手教你搞定Build-In管线环境与打包(基于2021.3.32f1)

避开Unity PS5开发第一个大坑:手把手教你搞定Build-In管线环境与打包(基于2021.3.32f1) 当你第一次尝试将Unity项目部署到PS5平台时,可能会遇到各种意想不到的障碍。从版本选择到SDK匹配,再到最终的打包流程&#xff0…...

676767899uijjk

bbbbbbbbghhjjjjuuyyjjjj...

堆 / 优先队列专题二刷笔记:前 K 个高频元素 数据流的中位数

目录 一、LeetCode 347. 前 K 个高频元素(中等) 题目描述 核心思路 方法 1:小顶堆(推荐,时间复杂度 O (n log k)) 方法 2:大顶堆(写法简单,但效率略低) …...

AI跑分飙升却无人问津,“说人话”才是模型出圈关键!

四月AI新动态四月,Anthropic发布Opus 4.7,OpenAI发布GPT 5.5,DeepSeek更新V4。三家公司发布通稿显示跑分、上下文、推理和代码能力提升,但互联网反应平淡,社交媒体讨论热度低,仅OpenAI的GPT - image出圈&am…...

小林大模型|大模型面试高频知识点合集2

什么是 Agent?与大模型有什么本质不同? 面试时答这道题,一定要点出三件事:一是 Agent 有自主规划能力,给它一个复杂目标它能自己拆解成多步;二是它能行动,通过工具调用跟外部世界真实交互&…...

急急急急急急急急哦吼吼吼叫

测试22333333...

免费解锁Windows虚拟显示器:Parsec VDD完整指南,游戏直播与远程办公的终极解决方案

免费解锁Windows虚拟显示器:Parsec VDD完整指南,游戏直播与远程办公的终极解决方案 【免费下载链接】parsec-vdd ✨ Perfect virtual display for game streaming 项目地址: https://gitcode.com/gh_mirrors/pa/parsec-vdd 你是否曾为远程服务器缺…...

R语言生态学入门:用rgbif包5分钟搞定GBIF物种分布数据下载(以十大功劳属为例)

R语言生态学入门:用rgbif包5分钟搞定GBIF物种分布数据下载(以十大功劳属为例) 当你在生态学研究中需要快速获取某个物种的全球分布数据时,GBIF(全球生物多样性信息网络)无疑是最权威的数据源之一。但对于刚…...

HTTP基础教程:请求方法、状态码、JSON、鉴权、超时、重试与流式返回

title: “HTTP基础教程:请求方法、状态码、JSON、鉴权、超时、重试与流式返回” date: 2026-04-28 tags: HTTPPythonAPIJSONFastAPIrequests description: “一篇面向初学者的 HTTP 基础博客教程,系统介绍请求方法、状态码、JSON、鉴权、超时、重试和流式…...

DeepAgents智能体

DeepAgents是LangChain 官方发布的 Agent 框架,基于 LangChain LangGraph 构建, 灵感直接来源于 Claude Code——官方 README 里明确写道, 这个项目"最初很大程度上是一次尝试,探究是什么让 Claude Code 如此通用&#xff0…...

如何轻松地将短信从 OnePlus 传输到 iPhone?

从一加这样的Android设备换 到 iPhone固然令人兴奋,但重要的短信怎么办呢?许多用户担心在换机过程中丢失短信历史记录。好在有几种方法可以让你安全高效地将短信从一加转移到 iPhone。本指南将引导你了解一些行之有效的解决方案。第 1 部分。如何通过移动…...

Arm Cortex-A720处理器错误分析与解决方案

1. Arm Cortex-A720处理器错误概述在处理器设计领域,硬件错误(Errata)是每个芯片开发者都需要面对的挑战。Arm Cortex-A720作为高性能计算的核心组件,其设计复杂度带来了某些特定场景下的异常行为。这些错误并非设计缺陷&#xff…...

榨干GD32F470性能:巧用SDRAM+SPI DMA,实现240x280 TFT屏的60FPS流畅动画

榨干GD32F470性能:SDRAMSPI DMA驱动TFT屏的60FPS优化实战 当你在嵌入式系统中需要实现流畅的UI动画时,内存带宽和处理器性能往往成为瓶颈。GD32F470这颗Cortex-M4内核的MCU,配合外置SDRAM和SPI DMA,却能突破内部RAM限制&#xff0…...

告别爆显存!实测Stable Diffusion v1-4模型在低配GPU上的最小化运行参数指南

低配GPU玩转Stable Diffusion:4GB显存极限优化实战手册 当我在自己的旧笔记本上第一次尝试运行Stable Diffusion时,那个刺眼的"CUDA out of memory"错误提示几乎浇灭了我的热情。但经过两周的反复试验和参数调整,我成功让这个拥有4…...

智能运维+多模型服务能力,阿里云 RDS AI 助手旗舰版正式上线!

数据库运维团队常常面临两大难题:一是混杂在阿里云、自建和他云上的各类数据库难以统一管理;二是想利用大模型能力提升运维效率,却要分别对接多个厂商的 API、管理多套密钥、承担高昂的集成成本。 RDS AI 助手旗舰版在 RDS AI 助手专业版智能…...

从CAN波特率索引表到寄存器:一份给嵌入式新手的底层配置原理图解

从CAN波特率索引表到寄存器:嵌入式开发的底层配置逻辑拆解 刚接触CAN总线的开发者,面对波特率配置时往往会遇到一个困惑:为什么有些开发板直接给出一张索引值对照表,而有些手册却要求手动配置7个寄存器?这两种方式背后…...

如何用MusicFree插件系统打破音乐平台壁垒:完整免费音乐聚合指南

如何用MusicFree插件系统打破音乐平台壁垒:完整免费音乐聚合指南 【免费下载链接】MusicFreePlugins MusicFree播放插件 项目地址: https://gitcode.com/gh_mirrors/mu/MusicFreePlugins 你是否厌倦了在不同音乐平台间来回切换?是否因为会员限制而…...

【Docker WASM边缘部署终极指南】:20年架构师亲授3大避坑法则、4层架构图与实时性能调优参数

更多请点击: https://intelliparadigm.com 第一章:Docker WASM边缘部署的演进逻辑与核心价值 WebAssembly(WASM)正从浏览器沙箱走向通用轻量运行时,而 Docker 官方对 WASM 的原生支持(自 2023 年 Docker D…...

本地mysql密码重置

第一步:准备工作关闭所有和 MySQL、DBeaver、CMD 相关的窗口,从头开始。如图:winR打开如下面板,然后确认找到正在运行的mysql服务,然后右键停止。以管理员身份打开 2 个「命令提示符」窗口(右键 CMD → 以管…...

若依(RuoYi-Vue)代码生成器实战:从零掌握单表CURD开发

前言若依框架是国内最流行的Spring Boot后台管理系统之一,其强大的代码生成器可以让我们告别繁琐的增删改查开发,只需几步操作就能生成完整的业务代码。本文将完整记录使用若伊代码生成器完成单表CURD的全流程,并分享实际开发中遇到的各种&qu…...

【LSTM回归预测】基于matlab改进的量子粒子群自适应算法ASL-QPSO优化LSTM循环神经网络的数据回归预测【含Matlab源码 15397期】

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…...