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

C++ (week9):Git

文章目录

    • 1.git介绍
    • 2.git安装
    • 3.git配置
    • 4.获取自己的SSH公钥
    • 5.新建仓库
    • 6.邀请开发者
    • 7.克隆远程仓库到本地
    • 8.在本地进行开发
    • 9.本地项目推送到远程仓库
    • 10.git的工作原理
    • 11.分支管理
      • (1)合作开发的方式
      • (2)分支管理
      • (3)分支合并的原理、冲突管理
    • 12.git 与 svn 的区别
    • 13.设置alias别名
    • 14.版本号标签
    • 15.多用户操作不同的文件
    • 16.强行覆盖
      • (1)远程强行覆盖本地仓库
      • (2)本地强行覆盖远程仓库
    • 17.解决git冲突问题

1.git介绍

在这里插入图片描述


2.git安装

sudo apt install git

3.git配置

在Gitee、GitHub上注册账号,配置 user name 和email。家目录下会生成.gitconfig文件。

在这里插入图片描述

在这里插入图片描述


4.获取自己的SSH公钥

1.生成公钥:

ssh-keygen -t rsa -C "具体的邮箱"
然后三次回车

2.复制公钥:.ssh目录下的id_rsa.pub里就是公钥信息

cat ~/.ssh/id_rsa.pub

3.粘贴公钥:
gitee,设置,安全设置,SSH公钥,粘贴进去

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


5.新建仓库

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


6.邀请开发者

在这里插入图片描述

在这里插入图片描述


7.克隆远程仓库到本地

1.获取仓库的地址
在这里插入图片描述


2.执行命令,将项目以文件夹形式 克隆到本地

git clone  仓库地址

8.在本地进行开发

项目基本架构的文件夹
在这里插入图片描述


9.本地项目推送到远程仓库

1.若有.git隐藏目录,证明该项目使用了git进行管理。
在这里插入图片描述


2.常用git命令
在这里插入图片描述

(1)提交

git add .
git commit -m "姓名: 操作内容"

在这里插入图片描述

(2)查看仓库的状态

git status

(3)把操作推送到远程仓库

git push origin master

origin是别名,在.git/config中设置

(4)查看git日志

git log

(5)版本回退

git reset --hard HEAD^  //回退到上一个版本
git reset --hard 版本号哈希值(一部分也行),版本可以前进和后退

(6)误删文件的恢复:工作区删除,但没提交 (commit)

git checkout -- .

10.git的工作原理

在这里插入图片描述

①工作区
在这里插入图片描述

②暂存区:.git/index
在这里插入图片描述

③版本库
生成版本号,用哈希值表示。它们以链表方式进行存储。

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


示例:

在这里插入图片描述

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


11.分支管理

(1)合作开发的方式

1.每一个成员都操作一个不同的文件,只使用master分支
在这里插入图片描述


(2)分支管理

在这里插入图片描述

git merge --no-ff -m "提交描述" develop  //合并分支

在这里插入图片描述

切换分支、合并分支
在这里插入图片描述


(3)分支合并的原理、冲突管理

1.如果本地与远程修改的不是同一个文件,则先pull,拉取远程更新本地的其他文件,再push。
2.如果本地与远程修改的是同一个文件,则会冲突。先将本地冲突文件拷贝到其他无关目录下,再pull合并远程。再对比本地冲突文件和远程有什么区别,人工合并代码后,再push。


12.git 与 svn 的区别

git相当于在本地也有一个版本控制库,远程仓库也有一个版本控制库。


13.设置alias别名

在这里插入图片描述


14.版本号标签

git tag v1.0		     //给当前分支的当前版本,打上v1.0的标签
git tag v1.1  versionno	 //给某个版本号(哈希值)的分支打上v1.1的标签
git tag 			//查看标签的情况
git tag -d v1.0		//删除本地标签

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

删除标签
在这里插入图片描述


15.多用户操作不同的文件

git pull

修改文件之前,先与远程仓库同步(pull),再推送(push)

在这里插入图片描述


版本冲突

git pull --force origin master:master

在这里插入图片描述

操作同一个文件,容易与远程冲突
在这里插入图片描述


解决冲突:cp本地修改的文件到其他位置 备份,然后用远程仓库强制覆盖本地仓库,再把备份的修改文件mv回来

git pull --force origin master:master

16.强行覆盖

(1)远程强行覆盖本地仓库

git pull --force origin master:master

(2)本地强行覆盖远程仓库

git push --force origin master:master

17.解决git冲突问题

解决git冲突是一门很深的学问。后续慢慢补充。
上文中15也提到了 冲突时,用 备份 + 强行覆盖的方式,先pull再push,解决冲突。

相关文章:

C++ (week9):Git

文章目录 1.git介绍2.git安装3.git配置4.获取自己的SSH公钥5.新建仓库6.邀请开发者7.克隆远程仓库到本地8.在本地进行开发9.本地项目推送到远程仓库10.git的工作原理11.分支管理(1)合作开发的方式(2)分支管理(3)分支合并的原理、冲突管理 12.git 与 svn 的区别13.设置alias别名…...

Seaborn:数据可视化的强大工具

文章目录 引言Seaborn的原理1. 底层结构2. 数据集成3. 图形类型 Seaborn的使用1. 安装与导入2. 数据加载与探索3. 绘制图形分布图关系图分类图 4. 图形定制5. 导出图形 结论 引言 在数据分析和科学计算领域,数据可视化是一个至关重要的步骤。它能够帮助我们更直观地…...

图解注意力

图解注意力 Part #2: The Illustrated Self-Attention 在文章前面的部分,我们展示了这张图片来展示自注意力被应用于正在处理单词"it"的一层中: 在本节中,我们将看看这是如何完成的。请注意,我们将以一种试图理解单…...

Typora Markdown编辑器 for Mac v1.8.10 安装

Mac分享吧 文章目录 效果一、准备工作二、开始安装1、双击运行软件,将其从左侧拖入右侧文件夹中,等待安装完毕2. 应用程序显示软件图标,表示安装成功 三、运行调试1、修改主题2、显示文档列表,如下图3、查看版本信息 **安装完成&…...

代码随想录算法训练营Day46|动态规划:121.买卖股票的最佳时机I、122.买卖股票的最佳时机II、123.买卖股票的最佳时机III

买卖股票的最佳时机I 121. 买卖股票的最佳时机 - 力扣(LeetCode) 之前用贪心算法做过相同的题,这次考虑使用动态规划来完成。 dp[i]表示前i天的最大利润 我们已知每一天的价格price[i],则dp[i]为每一天的价格price[i]减去当初…...

hive on spark 记录

环境&#xff1a; hadoop 2.7.2 spark-without-hadoop 2.4.6 hive 2.3.4 hive-site.xml <property><name>hive.execution.engine</name><value>spark</value> </property> <property><name>spark.yarn.jars</name>&l…...

【计算机网络体系结构】计算机网络体系结构实验-DHCP实验

服务器ip地址 2. 服务器地址池 3. 客户端ip 4. ping Ipconfig...

攻防世界-pdf

方法一&#xff1a;打开是pdf格式的文件&#xff0c;里面有一张图&#xff0c;题目提示图下面什么都没有&#xff1f;emmm用chrom打开pdf——ctrlf搜索flag&#xff0c;里面是有东西的&#xff0c;ctrla复制就可以了。 方法二&#xff1a;题目提示图下面什么都没有&#xff0c;…...

关于后端幂等性问题分析与总结

后端幂等性&#xff08;Idempotency&#xff09;是指对系统执行一次操作或多次执行相同的操作&#xff0c;其结果始终如一。在分布式系统和API设计中&#xff0c;这是一个关键概念&#xff0c;因为它能保证用户无论请求被路由到哪个节点&#xff0c;多次执行相同的请求都不会导…...

2024广东省职业技能大赛云计算赛项实战——容器云平台搭建

容器云平台搭建 前言 容器镜像使用的是斗学培训平台提供的镜像包&#xff0c;这东西网上都没有&#xff0c;一堆人要&#xff0c;我是靠自己想的方法获取到了&#xff0c;也不敢给。你们可以通过在这个网站申请环境进行操作https://ncc.douxuedu.com/ 虚拟机使用的是自行创建…...

手持弹幕LED滚动字幕屏夜店表白手灯接机微信抖音小程序开源版开发

手持弹幕LED滚动字幕屏夜店表白手灯接机微信抖音小程序开源版开发 专业版 插件版 手持弹幕小程序通常提供多种功能&#xff0c;以便用户在不同的场合如夜店、表白、接机等使用。以下是一些常见的功能列表&#xff1a; 文本输入&#xff1a; 输入要显示的文字内容&#xff0c;…...

红队内网攻防渗透:内网渗透之内网对抗:代理通讯篇无外网或不可达SockS全协议规则配置C2正反向上线解决方案

红队内网攻防渗透 1. 内网代理通讯1.1 网络不可达实战环境模拟1.1.1 CS代理技术-SockS配置-网络不可达-通讯解决1.1.1.1 反向shell上线入口点主机1.1.1.2 入口点CS搭建sokcs4代理1.1.1.3 本地使用Proxifier访问代理1.1.1 CS代理技术-正反向监听-网络不可达-C2上线1.1.1.4 正向s…...

PHP学习总结-入门篇

PHP简介 PHP (Hypertext Preprocessor)&#xff0c;即“超文本预处理器”。PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。PHP语法吸收了C语言、Java和Perl的特点&#xff0c;便于学习。PHP 是开源免费的&#xff0c;主要适用于Web开发领域&#xff0c;使用广泛。…...

IDEA Plugins中搜索不到插件解决办法

IDEA中搜不到插件有三种解决方案&#xff1a; 设置HTTP选项&#xff0c;可以通过File->Settings->Plugins->⚙->HTTP Proxy Settings进行设置 具体可参考这篇博文&#xff1a;IDEA Plugins中搜索不到插件解决办法本地安装&#xff0c;ile->Settings->Plugin…...

SpringBootWeb 篇-入门了解 Vue 前端工程的创建与基本使用

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 基于脚手架创建前端工程 1.1 基于 Vue 开发前端项目的环境要求 1.2 前端工程创建的方式 1.2.1 基于命令的方式来创建前端工程 1.2.2 使用图形化来创建前端工程 1.…...

折线统计图 初级

此为折线统计图的初级题目。 本次的题目较难&#xff0c;菜鸡请退出。 4. 下图显示了甲、乙两台电脑的价格以及它们已使用的年数&#xff0c;从图中可以知道( )。 15. 妈妈去菜市场买菜&#xff0c;走到半路遇到一位熟人聊了一会儿&#xff0c;突然发现忘了带钱。于是马上回…...

最新下载:XmanagerXShell【软件附加安装教程】

​相信大家都认同支持IPv6&#xff1a;最近越来越多的公司和国家都采用了IPv6&#xff0c;Xmanager的最新版本v5也加入支持这个功能&#xff0c;无论你是同时使用IPv4和IPv6网络或者完全的IPv6网络&#xff0c;Xmanager 5都可完全满足你的要求&#xff0c;使用MIT Kerberos认证…...

Coursera耶鲁大学金融课程:Financial Markets 笔记Week 02

Financial Markets 本文是学习 https://www.coursera.org/learn/financial-markets-global这门课的学习笔记 这门课的老师是耶鲁大学的Robert Shiller https://en.wikipedia.org/wiki/Robert_J._Shiller Robert James Shiller (born March 29, 1946)[4] is an American econom…...

读书笔记:《生死疲劳》

《生死疲劳》. 莫言 生死疲劳》是莫言最重要的代表作之一。他用动物的视角、俏皮的语言和鬼才的叙事手法&#xff0c;使这本讲述沉重故事的书中处处充满惊喜&#xff1b;用幽默、戏谑的方式化解现实的痛苦&#xff0c;让人在痛苦时依旧能笑出声来&#xff0c;给人以力量。…...

C++面向对象三大特性--多态

C面向对象三大特性–多态 文章目录 C面向对象三大特性--多态1.虚函数&#xff08;Virtual Function&#xff09;2.纯虚函数&#xff08;Pure Virtual Function&#xff09;和抽象类&#xff08;Abstract Class&#xff09;3.重写&#xff08;Override&#xff09;4.动态绑定&am…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

日常一水C

多态 言简意赅&#xff1a;就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过&#xff0c;当子类和父类的函数名相同时&#xff0c;会隐藏父类的同名函数转而调用子类的同名函数&#xff0c;如果要调用父类的同名函数&#xff0c;那么就需要对父类进行引用&#…...