[git] MacBook 安装git

文章目录

  • 1.Mac Git 安装
  • 2. 开发者工具
    • 安装 CommandLineTools
    • 安装完成,错误解决
  • 3. git 账户配置
    • 账户设置
    • 生成秘钥
    • git 或者 gitee 仓库添加公钥
    • 查看全局账户命令
    • 多账户设置
    • config文件
    • 测试连接
    • clone到本地

1.Mac Git 安装

Mac一般自带Git工具,也就是说已经安装好了 ,如果没有安装,可以去官网下载安装,或者直接使用 homebrew 指令下载(前提已经安装了 homebrew

#命令
brew install git

在这里插入图片描述

官网提供的方式: https://git-scm.com/download/mac

在这里插入图片描述

2. 开发者工具

过程中遇到下面异常时

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools),
missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

这个错误提示表明系统中的开发者工具路径存在问题,可能是缺少或无效的 CommandLineTools。

安装 CommandLineTools

#命令
xcode-select --install

在这里插入图片描述

安装完成,错误解决

在这里插入图片描述

3. git 账户配置

账户设置

#命令 :这里是全局账户设置,所有的仓库都是同一个账户
git config --global user.name "your_name"  
git config --global user.email "your_email@qq.com"
#若每个仓库一种账户名,就不是这种配方方法。需要单独配置

在这里插入图片描述
在这里插入图片描述

生成秘钥

#命令
ssh-keygen -t rsa -C "your_email@qq.com"

在这里插入图片描述

密钥生成成功后,一般会在本地的/Users/用户名/.ssh目录下会生成id_rsaid_rsa.pub两个文件
id_rsa文件:私钥,保存于本地;
id_rsa.pub文件:公钥,需要把里面内容配置到远端仓库(全部复制过去)。
在这里插入图片描述

git 或者 gitee 仓库添加公钥

在这里插入图片描述

查看全局账户命令

有时候我们会有多个Git账户,或者Gitee、GitHub等,这种情况下就需要使用SSH协议来链接不同的账户
在使用多个账户的情况下,如果以前全局配置过Git的用户名和邮箱,就需要取消全局配置的信息,改为对每个仓库单独配置。

#查看是否全局配置过Git用户名和邮箱
git config --global user.name
git config --global user.email
#全局配置Git用户名和邮箱
git config --global user.name "xxx"
git config --global user.email "xxx@xx.com"
#删除全局配置的Git用户名和邮箱
git config --global --unset user.name
git config --global --unset user.email

多账户设置

在 Mac 上配置 Git 多账户(比如 GitHub 和 Gitee)的步骤如下:

生成 SSH 密钥
首先,你需要为每个 Git 服务生成一个 SSH 密钥。在终端中运行以下命令,然后按照提示操作:

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

这里的 your-email@example.com 应该替换为你在 GitHub 和 Gitee 上注册的邮箱。

  1. 添加 SSH 密钥到 SSH 代理
    运行以下命令,将 SSH 密钥添加到 SSH 代理中:
ssh-add ~/.ssh/id_rsa_gitlab
ssh-add ~/.ssh/id_rsa_gitee

这里的 id_rsa_gitlabid_rsa_gitee 应该替换为你生成的 SSH 密钥的文件名。

config文件

MAC系统如果升级到13.0之后,可能会拉取失败,可以尝试在.ssh/目录的 config文件(没有可以新建) 进行如下配置

# Gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

在这里插入图片描述

测试连接

注意:生成的公钥,需要把里面内容配置到远端仓库(全部复制过去),否则会 permission denied。

在这里插入图片描述

我绑定的是gitee

#测试
ssh -T git@gitee.com

在这里插入图片描述
会生成一个 新的文件 know_hosts
在这里插入图片描述

同样的方法,可以绑定 GitHub 账户,过程是和gitee一样的。
配置结束,测试 github,也是 successful。

ssh -T git@github.com

在这里插入图片描述

最终的 config 文件

在这里插入图片描述

可以看出来,这git的 两个账户都是成功的。
在这里插入图片描述

clone到本地

成功配置后,就能用git 各种命令去操作 仓库文件了。
在这里插入图片描述
成功下载文件到本地。
在这里插入图片描述
当 git 配置成功后,也可以用 GUI 工具去管理仓库文件,比如 snailSVN, Smartgit, Github Desktop。这些工具都是支持MAC的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

yolov5明厨亮灶检测系统,厨师帽-口罩检测,带pyqt界面-可检测图片和视频,支持中文标签,检测接口已封装好并优化,代码可读性强!

明厨亮灶检测系统是一个专门用于餐饮业厨房安全监管的智能系统。该系统结合了先进的计算机视觉技术,尤其是使用YOLOv5模型进行厨师帽和口罩的实时检测,并通过PyQt5构建了一个用户友好的图形界面。该系统不仅能够检测图片和视频中的目标,而且支…

仪表盘检测系统源码分享

仪表盘检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Visio…

C++初阶大全

目录 一.命名空间 1.命名空间定义 2.命名空间使用 二.C输入&输出 三.缺省参数 四. 函数重载 五.引用 1.常引用 2.传值、传引用效率比较 3.引用和指针的区别 4.引用和指针的不同点: 小知识点: 六.内联函数 七.auto关键字(C11) 1.auto的使用细则 八.基于范围…

Rust练手项目,写个有趣的小工具定时从一言网获取一段有趣的话并推送通知

Rust练手项目,写个有趣的小工具 代码 继续练习Rust, 写个小工具定时从一言网获取一段有趣的话并提示,如下 练习以下Rust点 并发编程 Mutex, Arc指针使用HTTP请求Windows Gui 代码 Cargo.toml [package] name "funny_word" edition "20…

vscode中如何配置c/c++环境

“批判他人总是想的太简单 剖析自己总是想的太困难” 文章目录 前言文章有误敬请斧正 不胜感恩!一、准备工作二、安装 VSCode 插件三、配置 VSCode1. 配置编译任务(tasks.json)2. 配置调试器(launch.json) 四、运行和调…

数据结构(Day14)

一、学习内容 结构体 概念 引入:定义整数赋值为10 int a10; 定义小数赋值为3.14 float b3.14; 定义5个整数并赋值 int arr[5] {1 , 2 , 3 , 4 ,5}; 定义一个学生并赋值学号姓名成绩 定义一个雪糕并赋值名称产地单价 问题:没有学生、雪糕 数据类型 解决&…

【C/C++】程序的构建(编译)过程概述

🦄个人主页:小米里的大麦-CSDN博客 🎏所属专栏:C_小米里的大麦的博客-CSDN博客 🎁代码托管:C: 探索C编程精髓,打造高效代码仓库 (gitee.com) ⚙️操作环境:Visual Studio 2022 目录 一、前言 二、预处理(Preprocessi…

C# USB通信技术(通过LibUsbDotNet库)

文章目录 1.下载LibusbDotNet库2.引入命名空间3. 实例化USB设备4.发送数据5.关闭连接 1.下载LibusbDotNet库 右击项目选择管理NuGet程序包在弹出的界面中搜索LibusbDotNet,然后下载安装。 2.引入命名空间 using LibUsbDotNet; using LibUsbDotNet.Main;3. 实例化…

MoneyPrinterTurbo 安装使用流程

项目地址: https://github.com/harry0703/MoneyPrinterTurbo 开发环境:mac 1 git 下载 # 下载代码到本地 git clone https://github.com/harry0703/MoneyPrinterTurbo.git cd MoneyPrinterTurbo2 docker 配源 在 docker 安装目录执行以下命令显示隐藏…

《Nginx核心技术》第17章:使用自签CA配置HTTPS加密反向代理访问

作者:冰河 星球:http://m6z.cn/6aeFbs 博客:https://binghe.gitcode.host 文章汇总:https://binghe.gitcode.host/md/all/all.html 星球项目地址:https://binghe.gitcode.host/md/zsxq/introduce.html 沉淀&#xff0c…

3.Java高级编程实用类介绍(一)

三、Java高级编程实用类介绍(一) 文章目录 三、Java高级编程实用类介绍(一)一、枚举类型二、包装类三、Math 一、枚举类型 使用enum进行定义 public enum 枚举名字{值1,值2.... }二、包装类 每个基本类型在java.lang包中都有一个相应的包装类 /** new包装类(字符…

华硕产品资料的查询方法

华硕网站有些奇怪,比如我要查询x99-pro这款已经停售的主板的资料,在它的首页搜索,搜索结果为空: 然后在服务支持和下载中心,同样搜不到。 经高人指点,用下面的方法,可以搜到: https…

C++ char*和char[] 可能指向的内存区域详解(附实验)

C char* 指向的内存区域详解 写在前面c内存结构简介指针常量和常量指针简介情况一:char* 指向栈区内容情况二:char* 指向堆区内容情况三:char* 指向常量区内容情况四:char* 指向静态区内容情况五:char* 指向全局区内容…

mysql 8.0 时间维度表生成(可运行)

文章目录 mysql 8.0 时间维度表生成实例时间维度表的作用时间维度表生成技术细节使用时间维度表的好处 mysql 8.0 时间维度表生成实例 时间维度表的作用 dim_times(时间维度表)在数据仓库(Data Warehouse)中的作用至关重要。作为…

Vite + Electron 时,Electron 渲染空白,静态资源加载错误等问题解决

问题 如果在 electron 里直接引入 vite 打包后的东西,那么有些资源是请求不到的 这是我的引入方式 根据报错,我们来到 vite 打包后的路径看一看 ,修改一下 dist 里的文件路径试了一试 修改后的样子,发现是可以的了 原因分析 …

Java-idea小锤子图标

这一版的idea小锤子图标其实就在这里 点进去就找到了~

航空航司reese84逆向

reese84逆向 Reese84 是一种用于保护网站防止自动化爬虫抓取的防护机制,尤其是在航空公司网站等需要严格保护数据的平台上广泛使用。这种机制通过复杂的指纹识别和行为分析技术来检测和阻止非人类的互动。例如,Reese84 可以通过分析访问者的浏览器指纹、…

java技术栈介绍

Java技术栈是一个庞大而丰富的生态系统,它包含了从基础语言特性到高级框架、库和工具的整个集合。这个技术栈为开发者提供了构建各种类型应用(包括企业级应用、Web应用、移动应用、大数据应用等)所需的全部组件。以下是对Java技术栈的一个更详…

Java 技巧 如何在IDEA2024 中快速打出System.out.println();

1.基本用法 键入sout回车 回车后变成: 2.打印变量 快速打印变量,以打印变量名为set为例,set.sout回车, 回车后变成

YOLOv8 人体姿态估计动作识别关键点检测(代码+教程)

YOLOv8 人体姿态判断 项目介绍 YOLOv8 人体姿态判断 是一个基于最新YOLOv8模型的深度学习项目,旨在识别和分析人体姿态。该项目利用先进的计算机视觉技术和深度学习框架,通过摄像头捕捉实时图像或处理存储图像,识别人体的关键点&#xff0c…