Mac 安装 git

news2024/11/15 19:35:33

文章目录

  • 前言
  • 一、介绍
  • 二、下载
  • 三、验证
  • 四、配置
  • 五、Git常用命令
  • 六、git提交和撤销工作流程
    • 代码提交和提交同步
    • 代码撤销和撤销同步
  • FAQ
    • 1.homebrew 下载
      • 解决方法一(强烈推荐):
      • 解决方法二:
  • 总结


前言

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。


一、介绍

Git是一个开源的分布式版本控制系统,由Linus Torvalds创建,用于有效、高速地处理从小到大的项目。Git是目前世界上最流行的版本控制系统,广泛应用于软件开发中,用于代码的版本管理和协同工作。

git的主要特性如下:

  • 分布式架构:Git给予每个开发者一份完整的代码库副本(包括完整的历史记录),这意味着即使在无网络连接的情况下,大多数Git操作也能完整运行。

  • 速度:Git在合并、分支、标签和其它操作的速度上非常快。

  • 数据完整性:Git通过SHA-1哈希算法保护代码和历史记录的完整性。

  • 支持分支和合并:Git支持快速、简便的分支创建和合并操作。

  • 易于管理:Git维护了一个指向当前开发分支的引用,这使得切换分支和更新分支变得容易。

  • 支持离线操作:开发者可以在本地进行大部分Git操作,如提交、查看历史等,而不需要网络连接。

  • 灵活的工作流程:Git支持多种工作流程,如集中式工作流、功能分支工作流、Gitflow工作流等。

  • 成套工具:Git提供了成套的工具来协助代码的合并、查看历史、比较差异等。

  • 图形化界面:虽然Git是一个命令行工具,但存在许多图形化界面(GUI)客户端,如GitHub Desktop、SourceTree、GitKraken等。

  • 社区和生态系统:Git拥有一个庞大的社区,提供了大量的工具和集成,可以与GitHub、GitLab、Bitbucket等平台无缝集成。

Git是现代软件开发中不可或缺的工具,它帮助开发者高效地管理代码变更、协作和追踪项目进度。

二、下载

到官网,根据操作步骤进行下载;

官网地址:https://git-scm.com/download/mac
在这里插入图片描述
打开终端,输入命令

brew install git

如果提示,brew命令找不到,请到下文FAQ下找下载方式。
在这里插入图片描述

三、验证

打开终端,输入命令【git -v】
在这里插入图片描述

至此git安装完成。

四、配置

打开终端,输入命令,配置用户名

git config --global user.name "Your Name"

配置邮箱

git config --global user.email "your_email@example.com"

查看配置

git config --global --list

如果需要用SSH的方式访问gitHub或者gitee或公司内部署的gitlab,可以通过以下命令生成密钥:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

在这里插入图片描述
然后输入命令查看公钥

cat ~/.ssh/id_rsa.pub

在这里插入图片描述
复制粘贴到github密钥管理中即可。

五、Git常用命令

  • git init:初始化一个新的Git仓库。

  • git clone:克隆一个远程仓库到本地。

  • git add:将文件添加到暂存区。

  • git commit:将暂存区的文件提交到本地仓库。

  • git status:查看当前仓库的状态。

  • git pull:从远程仓库拉取最新代码。

  • git push:将本地的提交推送到远程仓库。

  • git branch:查看、创建或删除分支。

  • git checkout:切换分支。

  • git merge:合并分支。

  • git log:查看提交历史。

  • git diff:查看文件差异。

六、git提交和撤销工作流程

代码提交和提交同步

在这里插入图片描述

代码撤销和撤销同步

在这里插入图片描述

FAQ

1.homebrew 下载

Homebrew 是对 macOS(或您的 Linux 系统)的补充。使用Homebrew 安装 Apple(或您的 Linux 系统)没有预装但 你需要的东西。
官网:https://brew.sh/
在这里插入图片描述

解决方法一(强烈推荐):

使用国内源,下载速度飞快,打开终端输入命令

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

在这里插入图片描述
然后根据提示输入命令

source /Users/Zhuanz1/.zprofile

在这里插入图片描述

解决方法二:

打开电脑终端,输入命令

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

在这里插入图片描述
如果下载较为慢,可以先访问 https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh
在这里插入图片描述
复制内容,然后打开终端,输入【cd Desktop】回到桌面,然后输入命令

sudo vim install.sh

然后按【i】进入编辑模式,然后按【esc 】退出编辑模式;按【:wq】保存并退出;

然后输入命令,设置可执行文件权限;

sudo chmod +xrw install.sh

在这里插入图片描述
再输入命令:

/bin/bash -c

将 桌面的 install.sh 文件拖进来,执行
在这里插入图片描述
等待执行完成即可
在这里插入图片描述


总结

以上就是今天要讲的内容,本文仅简单介绍了在mac环境中安装git方法。

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

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

相关文章

JavaScript 中的 Range 和 Selection 对象

JavaScript 中的 Range 和 Selection 对象 前言 最近在做鼠标框选的需求,鼠标框选就需要用到 Range 和 Selection 对象。 Range 表示选择的区间范围,Selection 表示选择的文档内容。 下面就详细说下这两个对象 一、Range Range 接口表示一个包含节…

太速科技-FMC125-两路125Msps AD,两路160Msps DA FMC子卡

FMC125-两路125Msps AD,两路160Msps DA FMC子卡 一、板卡概述 板卡可实现2路14bit 125Msps AD 和2路16bit 160MspsDA功能,FMC LPC连接器用于扩展到xilinx用于模拟信号、中频信号采集,信号发出等应用。 二、性能指标 板卡功能 参…

Vue3 Uncaught SyntaxError: Unexpected token <‘ 错误参考解决方法

1.最近在做一个登录首页的动画效果,动画组件是用的网上类似csdn方式,但是本地引入完全没问题,打包正式环境,直接报错,动画直接不起作用. 关于vue2的解决方法: 1.检查引用的 JavaScript 文件是否正确:确认所有引用的外部 JavaScript 文件路径是否正确,可…

陪玩系统源码,高质量的陪玩系统源码,游戏陪玩APP源码开发,语音陪玩源码搭建,整合需求精准定位

如今越来越多的人看到了游戏行业的市场,作为最近几年出现的一个新兴产业,需求是巨大的,因此开发陪玩app源码,正好可以优化服务体验来整合该市场。 原生陪玩源码or混合开发陪玩源码 游戏陪玩APP源码,基本上都是原生的&…

Docker安装MongoDB(Linux版)

文章目录 前言一、Docker环境的准备1.安装依赖2.安装Docker 二、使用Docker安装MongoDB1.mongo版本选取2.拉取合适的镜像3.宿主机创建MongoDB需要挂载的文件夹4.第一次无认证创建mongo用户5.启动需要认证的mongo容器 问题汇总总结 前言 本文章主要介绍在Centos系统&#xff0c…

ROS | 用IMU实现航向锁定

基本原理: 引入速度控制模块: /cmd_vel 设置目标角度,计算偏移差值 然后消息传递在z轴移动的角度 代码实现: C: CPP文件还需要编辑CMAKE文件 Python: Python文件需要给于权限:chmod x imu_node.py

【Muduo】三大核心之Poller、EPollPoller

Poller 在Muduo中,Poller负责基于IO多路复用机制进行IO事件监听和处理的组件,作为EPollPoller的基类,为后者提供了与PollPoller统一的IO复用接口,并且声明了一个关键的创建派生类的成员函数: static Poller *newDefa…

NDIS小端口驱动(五)

在需要的时候,我们也许需要NDIS微型端口程序信息,下面会从多个方面来讨论如何查询NDIS微型端口驱动。 查询无连接微型端口驱动程序 若要查询无连接微型端口驱动程序维护的 OID,绑定协议调用 NdisOidRequest 并传递 一个NDIS_OID_REQUEST 结…

OSPF多区域组网实验(华为)

思科设备参考:OSPF多区域组网实验(思科) 技术简介 OSPF多区域功能通过划分网络为多个逻辑区域来提高网络的可扩展性和管理性能。每个区域内部运行独立的SPF计算,而区域之间通过区域边界路由器进行路由信息交换。这种划分策略适用…

线性代数(二)

1.标量 标量也叫0D张量,一个标量就是一个数,它只有大小,没有方向。 import torch x torch.Tensor(3) print(x)2.向量 向量也叫1D张量。向量只有一个轴,沿着行的方向,或者沿着列的方向。向量一般指列向量。 import…

光伏储能EMS 风电智慧能量管理系统 -安科瑞王盼盼

安科瑞18721098782王盼盼 一:储能 EMS(Energy Management System) 储能 EMS:储能 EMS 是一个综合管理系统,用于整体管理和优化储能系统的运行。它基于电力系统的需求和需求响应,通过控制和协调储能设备的…

WPF中DataGrid实现多选框功能

1. 效果图 2. Model建立 public class RstModelCheck : ObservableObject {//为了显示Head1和Head2.而且View中绑定属性而非字段,否则不能显示。public string? Name { get; set; } public bool PlatenAll {get > _platenAll;set{SetProperty(ref _platenAl…

【代码随想录】【算法训练营】【第15天】 [102]二叉树的层序遍历 [226]翻转二叉树 [101]对称二叉树

前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day 15,一周中最困难的周三~ 题目详情 [102] 二叉树的层序遍历 题目描述 102 二叉树的层序遍历 解题思路 前提:二叉树的层级遍历 思路:利用队列的“先进先出…

C#利用WinForm实现可以查看指定目录文件下所有图片

目录 一、关于Winform 二、创建应用 三、功能实现 四、代码部分 一、关于Winform Windows 窗体是用于生成 Windows 桌面应用的 UI 框架。 它提供了一种基于 Visual Studio 中提供的可视化设计器创建桌面应用的高效方法。 利用视觉对象控件的拖放放置等功能,可…

信捷PLC 编程常用寄存器及编程技巧说明

最近在用信捷的PLC,分享下常用的寄存器和编程技巧说明。 技巧主要包括以下几个方面: 充分规划各个功能区:在编写程序时,需要充分规划各个功能区。 考虑伺服步进功能和气缸手动功能的应用,手动操作时,可…

C语言 | Leetcode C语言题解之第107题二叉树的层序遍历II

题目: 题解: int** levelOrderBottom(struct TreeNode* root, int* returnSize, int** returnColumnSizes) {int** levelOrder malloc(sizeof(int*) * 2001);*returnColumnSizes malloc(sizeof(int) * 2001);*returnSize 0;if (!root) {return level…

个人感觉对Material设计有用的几个网址

(一) Modular and customizable Material Design UI components for Android GIthub: material-components-android (二) 学习Material设计 Material Design (三) 用于创建Material主题,支持导出多种格式 material-theme-builder

Web API——获取DOM元素

目录 1、根据选择器来获取DOM元素 2.、根据选择器来获取DOM元素伪数组 3、根据id获取一个元素 4、通过标签类型名获取所有该标签的元素 5、通过类名获取元素 目标:能查找/获取DOM对象 1、根据选择器来获取DOM元素 语法: document.querySelector(css选择…

一维前缀和[模版]

题目链接 题目: 分析: 因为要求数组中连续区间的和, 可以使用前缀和算法注意:下标是从1开始算起的, 真正下标0的位置是0第一步: 预处理出来一个前缀和数组dp dp[i] 表示: 表示[1,i] 区间所有元素的和dp[i] dp[i-1] arr[i]例如示例一中: dp数组为{1,3,7}第二步: 使用前缀数…

css特性(继承性、层叠性)

1.继承性 可以继承的常见属性(文字控制属性都可以继承) ps:可以通过调试器查看是否能够继承 注意:a标签的color会继承失效;h系列标签的font-size会继承失效 2.层叠性 后面的样式会覆盖前面的样式 给同一个标签设置不同的样式…