教你在mac上使用git(从安装到在gitee上操作)

2023-11-04

1git是啥?如何安装?

分布式的代码版本管理工具/团队协作工具

不是一个人能搞定

开发linux->顺手做了个git

张三->一段程序A.java

李四->一段程序B.java

在两个不同的文件,最传统的手工人工合并

帮助我们进行代码合作,方便进行团队协作的版本管理工具

网站

github.com -全球范围内,微软收购了

开源项目

私有项目

企业项目

建议自己注册一个账户把自己的开源项目放上去

gitlab.com

`github上有的都有

`支持我们自己使用gitlab搭建自己的git服务器

gitee.com--github.com国内版

`加快访问

创建后会看到git给我们的入门代码

现在让我们开始git的安装

打开终端git --version

查看是否已安装

如未安装

则brew install git

没安装brew?

没关系  很简单 一行代码

安装brew

2创建仓库与使用

第一步安装git客户端

用yum安装 yum -y install git

查看版本 yum — version

第二部设置本地名字和邮箱

Git 全局设置:

机器标识

git config --global user.name "用户名" git config --global user.email "你的邮箱"

第三部生成ssh key

ssh-keygen -t rsa -C "你的邮箱"

第一个回车,默认路径

第二个使用秘钥的密码也可以为空

第三次再次输入相同密码也可为空

然后根据路径

pub公钥

找到pub文件

如:cat /Users/dk/.ssh/id_rsa.pub

或者cd进去打开也一样

第四步在giteessh公钥添加公钥

使用

`公钥可以给别人

`私钥不要给任何人,只自己使用.别人拿到=另外一个你

他俩钥匙都能解开对方的加密

自己通过私钥加密的链接能用公钥解开,此时就能认定我就是私钥的主人.

`加密证书

`电子签章

对称加密与非对称加密

“对称加密”很好理解,就是指加密和解密时使用的密钥都是同一个,是“对称”的。只要保证了密钥的安全,那整个通信过程就可以说具有了机密性。

举个例子,你想要登录某网站,只要事先和它约定好使用一个对称密码,通信过程中传输的全是用密钥加密后的密文,只有你和网站才能解密。黑客即使能够窃听,看到的也只是乱码,因为没有密钥无法解出明文,所以就实现了机密性。

1、DES

数据加密标准(DES)算法 采用的 56 位密钥,每次计算加密 64 位的数据。目前已经被证明可以被暴力破解。所谓暴力破解,就是遍历所有可能的密钥解析数据的方法。举个例子,已知张三和李四传输的是中文,加密算法是 DES,那么拿出一小段数据进行暴力破解,尝试所有的密钥,如果能成功解析出中文词语(词语在词库中可以查到),那么说明破解成功。

2、AES(推荐)

为了应对暴力破解等问题,很多团队选择对称加密算法时开始使用高级加密标准(AES),这个加密法用 128 位密钥,并设计了更难破解的算法。推荐在项目中使用

3、其他

RC4、DES、3DES、AES、ChaCha20 ,但前三种算法都被认为是不安全的,通常都禁止使用,目前常用的只有 AES 和 ChaCha20。

对称加密看上去好像完美地实现了机密性,但其中有一个很大的问题:如何把密钥安全地传递给对方,术语叫“密钥交换”。如果你和网站约定的密钥在传递途中被黑客窃取,那就没有安全性可言了。所以需要一种新的可以保证安全传递秘钥的算法。

非对称加密

非对称加密也叫公钥加密算法。它有两个密钥,一个叫“公钥”(public key),一个叫“私钥”(private key)。两个密钥是不同的,“不对称”,公钥可以公开给任何人使用,而私钥必须严格保密。

公钥和私钥有个特别的“单向”性,虽然都可以用来加密解密,但公钥加密后只能用私钥解密,反过来,私钥加密后也只能用公钥解密。

非对称加密可以解决“密钥交换”的问题。网站秘密保管私钥,在网上任意分发公钥,你想要登录网站只要用公钥加密就行了,密文只能由私钥持有者才能解密。而黑客因为没有私钥,所以就无法破解密文

1、RAS

RSA 几乎可以说是非对称加密的代名词,它的安全性基于“整数分解”的数学难题,使用两个超大素数的乘积作为生成密钥的材料,想要从公钥推算出私钥是非常困难的。

10 年前 RSA 密钥的推荐长度是 1024,但随着计算机运算能力的提高,现在 1024 已经不安全,普遍认为至少要 2048 位。

2、其他

DH、DSA、ECC 等。

HTTPS 协议的握手和交换密钥过程需要非对称加密算法;

应用

HTTPS 协议的握手和交换密钥过程需要非对称加密算法

比如利用证书实现 git 账号的免密操作也是基于非对称加密算法

文件提交

三个区域

第五步相关代码

mkdir eryue cd eryue git init 初始化仓库 touch README.md git add README.md 或者git add . 追踪命令 这个代表追踪所有 git commit -m "first commit" 提交到本地仓库 ""里是备注

git remote add origin git@gitee.com:dukai01/Test.git

用SSH不用密码

然后

git push -u origin "master"

而HTTP需要密码

it remote add origin https://gitee.com/dukai01/Test.git

换源

如果用了HTTP还想换SSH

remote rm origin

然后再重新进行操作

对了mac可能会隐藏文件

shift+command+. —显示隐藏文件夹如果在访达里找不到可能被隐藏了

此时就已经创建完git仓库并且上传文件了

3使用创建好的仓库

git clone +你的仓库建议SSH

然后git add.

git status查看追踪情况

git commit -m

然后git push

4同步线上仓库文件到本地

git fetch和gitpull

同名且文件内容相同会报错

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

教你在mac上使用git(从安装到在gitee上操作) 的相关文章

  • 即使安装了 wget,它也未被识别为命令

    我知道我在这里做了一些非常愚蠢的事情 但我已经尝试了我能想到的事情 这是我的会议的相关部分 wget http pjmedia com instapundit bash wget command not found cd pip insta
  • 是否有一个 Git 命令可以在推送到 master 之前添加通知/警告

    我有一个用例 其他人依赖我在从 master 下拉时没有启用标志 但我需要在本地处理存储库时启用它 我希望 希望 Git 有一种方法可以添加通知或警告 当请求推送到 master 时会触发 作为某种 提醒 所以也许我的工作流程可能是这样的
  • 如何在 *Windows* 中将 Mercurial 存储库转换为 Git? [复制]

    这个问题在这里已经有答案了 可能的重复 在 Windows 上将 Mercurial hg 存储库转换为 Git 7 https stackoverflow com questions 3267232 converting a mercur
  • Git:切换工作区(计算机)而不提交

    有没有办法在不进行提交 签出的情况下应用差异补丁或类似补丁 我的情况 我工作时经常在计算机之间切换 我的提交历史有一堆 开关机 消息 我最初的猜测是这可能会导致其他麻烦 但我想我可能会问是否有适合这种情况的合适的解决方案或工作流程 编辑 澄
  • Google App Engine 和 Git 最佳实践

    我正在 Google App Engine 上开发一个小型宠物项目 我想使用以下命令将源代码置于源代码控制之下github http www github com 这将允许我的朋友检查和修改源代码 我只有一个PetProject包含所有源的
  • 关闭 Sublime Text 3.2 中的 git 集成

    如果我想关闭 Sublime text 左侧装订线中的 GIT 集成 又名史莱姆绿线 我只需将其切换为 false 26 show git status false 但是 当在首选项中进行设置时 我收到错误 尝试解析设置时出错 意外的字符
  • git difftool 进行目录比较?

    是否可以使用 git difftool 命令来打开已更改文件和暂存 检查文件之间的目录比较 因此 理想情况下 如果 2 个文件已更改 它们将是唯一显示的 2 个文件 但在目录比较中 我读过关于让 git 并行给出所有文件差异的帖子 所以像
  • 如何判断相机是否正在被其他进程使用?

    在 OS X 中 如何判断摄像头或麦克风是否正在被其他应用程序或进程使用 除非其他应用程序锁定了设备 否则以下操作似乎不起作用 NSArray devices AVCaptureDevice devices for AVCaptureDev
  • 安装 gem 失败并出现权限错误[重复]

    这个问题在这里已经有答案了 我昨天将 Mac 操作系统更新至 10 9 Mavericks 我当前的 Ruby 版本显示为 ruby 2 0 0p247 2013 06 27 修订版 41674 universal x86 64 darwi
  • 在 Mac OS X 中将 Caps Lock 用作 Esc

    How do I make Caps Lock work like Esc in Mac OS X Edit As described in this answer https stackoverflow com a 40254864 66
  • 如何防止在 macOS 中打开同一窗口的多个实例?

    我正在制作一个 Mac 菜单栏应用程序 它有一个Preferences选项 当用户点击它时 会出现一个Preferences将打开窗口 显示应用程序的所有设置 我打开Preferences窗口如 let storyboard NSStory
  • Mac App Store 应用内购买的在线收据验证

    对于 iOS 的应用内购买 我们可以使用在线 API 进行验证 http developer apple com library ios documentation NetworkingInternet Conceptual StoreKi
  • git:键不包含节

    我使用的是 Git 版本 1 8 4 2 When I press tab to auto complete any command it prints the error below and it also completes the c
  • 创建 Git 标签时自动运行 Git hook

    是否有一个 Git 钩子可以在添加新的 Git 标签时执行 因为我想自动将新的 Git 标签名称写入文本文件 您知道如何执行此操作吗 虽然目前无法使用挂钩 但您始终可以创建一个简单的脚本 mytag sh bin sh z 1 git ta
  • 将远程存储库导入为具有完整历史记录的子目录

    我想将远程存储库作为具有完整历史记录的子目录进行合并和解耦 有多种方法和问题可以实现这一点 我的第一次尝试是使用subtree但它似乎没有重写文件的历史记录 所以我无法查看合并存储库的历史记录 接下来的尝试是手动合并它 就像 Seth Ro
  • 将文件提交到不同的分支而不进行签出

    是否可以在 git 分支中提交文件而不检出该分支 如果是这样怎么办 本质上 我希望能够将文件保存在我的 github Pages 分支中 而无需一直切换分支 有什么想法吗 我需要以原子方式完成此操作 而不更改当前目录 因此多个命令将无法工作
  • 如何将Github中的develop分支设置为默认分支而不是master?

    我知道这可以在存储库的管理页面上完成 可以在那里设置另一个默认分支 这就是这个问题的答案 但我发现 也许是一个错误 以下内容 如果你的master分支和develop分支完全相同 那么git克隆将不会克隆默认的 develop 分支 但仍然
  • Mac OS X 中每个进程的磁盘读/写统计信息

    如何在 Mac OS X 中以编程方式获取每个进程的磁盘 I O 统计信息 在 活动监视器 应用程序或 top 命令中 我们只能获取整个系统磁盘 I O 统计信息 以供参考PC 上也有类似的问题 https stackoverflow co
  • 如何将“develop”分支推送到远程“origin”?

    当我做git flow init它创造了一个master and develop分支机构 当我添加遥控器时git remote add origin email protected cdn cgi l email protection Ne
  • 如何在 git 中仅获取唯一的提交

    我想获取所有分支中唯一提交的列表 但是如果有人在分支中使用 rebase 则会提交松散的父项 如何解决这个问题呢 如何获取进行独特更改的提交列表 I use git log oneline graph cherry pick left ri

随机推荐

  • java三种注释_java注释的三种形式分别是什么

    java注释的三种形式分别是 1 单行注释 如 单行注释 2 多行注释 如 多行注释 3 文档注释 如 author JAVA的注释共有三种形式 单行注释 多行注释 文档注释 推荐教程 java课程 1 单行注释public class o
  • vue项目第四天

    使用elementui tabplane组件实现历史访问记录组件的二次封装
  • 关于windows11安装vc6.0闪退解决问题

    前两天刚升级成为windows11用户 可是突然发现windows11安装了vc6 0打开就闪退 最后才发现是windows11不兼容 解决方法如下 1 打开安装包找到如下文件 2 找到下面文件 3 找到MSDEV EXE文件 4 将MSD
  • 浏览器Uncaught QuotaExceededError错误(localStorage超出限额)

    Web Storage网络存储 HTML5的Web Storage网络存储是指网络应用程序用于在网络浏览器存储方法和通讯协议 支持持久数据存储 类似于Cookie 以及window local存储 网络存储又分为localStorage本地
  • 数电基础一:原码、反码和补码

    一 原理和计算 1 原码 在数字电路中 我们用逻辑电路输出的高低电平表示二进制码1 0 我们有时候需要对正数和负数进行操作 但是在二进制逻辑电路中只有0和1 并没有负号 所以我们在数值的最高位添0表示正数 添1表示负数 这样的数就叫原码 2
  • nacos配置中心的命名空间&配置集&配置id&配置分组

    命名空间 配置集 配置id 配置分组 命名空间 用作配置隔离 一般每个微服务一个命名空间 默认public 默认新增的配置都在public空间下 开发 测试 开发可以用命名空间分割 properties每个空间有一份 也可以为每个微服务配置
  • 震源球(沙滩球)

    震源球的三个重要参数 走向 strike 倾角 dip 滑动角 rake 走向 strike 断层的走向是断层面和水平面的交线 它有两个方向 相差180 为了明确起见 规定选取站在上盘面对下盘向右看的方向为断层面走向 记作 其取值范围为 0
  • 使用vscode进行远程调试

    官方调试手册 vscode官方调试手册 1 安装python扩展 如果是远程连接的话 一定要在ssh上启用扩展 不然创建基于python的配置文件时就会提示 无python扩展 2 新建配置文件 并修改参数 点击左侧第四个按钮 运行与调试
  • 小破孩&小屁妮

    偶闻 小破孩放出限量版情侣衫 毫不犹豫地就订了一套 很PP的 周末穿着大街上走了一圈 嘿 怪吸引眼球的
  • 当当网图书分析系统

    当当网图书分析系统 此系统有详细的录屏 下面只是部分截图 需要看完整录屏联系博主 系统开发语言python 框架为django 数据库mysql 分为爬虫和可视化分析
  • 力扣75.颜色分类 && 用异或swap时的注意事项。

    问题描述 在做 力扣75 颜色分类时候遇到的问题 荷兰国旗问题 代码正常写 但最后提交出现多次错误 代码 class Solution public void swap int a int b a b b a a b void sortCo
  • ERROR: Cannot create variant 'android-lint' after configuration ':sdk:debugRuntimeElements' has been

    最近项目添加model的时报错 看着错误信息眼熟 在此记录一下解决方法 错误信息 ERROR Cannot create variant android lint after configuration sdk debugRuntimeEl
  • thinkphp5学习路程 六 实现分页功能

    实现分页的功能具体的就是这个 paginate paginate 10 20 代表的含义就是一页显示10条数据 显示20页 public function test 查询数据库 result Db table user gt where i
  • 疯狂的联邦学习!研究员年薪百万?

    码农不容易 我这十几年一直在学习 停都停不下来 因为互联网技术发展真的造化弄人 上学那会儿 老师说C 有前途 因为大多数的企业都用它来写服务器程序 过了两年突然原来这个世界是Java的 遂挑灯恶补Spring 然而 技术永远在诞生新的 概念
  • python进行rar、tar、unzip解压

    参考文章链接 https blog csdn net qq 22865879 article details 120849457 1 python进行rar解压 1 需要使用Python的rarfile工具包 下载地址 http sourc
  • 成功打破 GPT-4 上限,新版 Claude 横空出世!

    公众号关注 GitHubDaily 设为 星标 每天带你逛 GitHub 前 OpenAI 团队成员在离职后 创办了 Anthropic 公司 今年 3 月份的时候 该公司推出一款名为 Claude 的应用 试图与 ChatGPT 一争高下
  • 前端工程化之Webpack优化

    打不垮我的 将使我更加坚强 尼采 大家好 我是 柒八九 好久没更文了 其实这段时间 一直没闲着 在准备一些比较重要的东西 忙着跑步 忙着学习 忙着xx 总之就是 一直在忙着 从未停歇 虽然 这段时间 没有文章的发布 其实 在私底下 已经有不
  • [教程]AMD芯片用VirtualBox安装MacOS虚拟机

    您的赞 是小熊更新的动力 本教程非常的简单 只需要几个步骤即可轻松安装好 效果图片 目前 大部分教程都是使用intel的芯片 Vmware软件进行安装macos 但实际上 使用VirtualBox安装MacOS同样也是一件简单的事情 笔者使
  • 【代码随想录】链表刷题

    链表 理论基础 移除链表元素 设计链表 动态单链表 动态双向链表 静态单链表 反转链表 两两交换链表中的节点 删除链表的倒数第 N 个节点 链表相交 环形链表 快慢指针 环形链表 II 很多重复的题参考 代码随想录 双指针法刷题 理论基础
  • 教你在mac上使用git(从安装到在gitee上操作)

    1git是啥 如何安装 分布式的代码版本管理工具 团队协作工具 不是一个人能搞定 开发linux gt 顺手做了个git 张三 gt 一段程序A java 李四 gt 一段程序B java 在两个不同的文件 最传统的手工人工合并 帮助我们进