Git使用基础总结(从小白到新手版)

  • (꒪ꇴ꒪ ),Hello我是祐言QAQ
  • 我的博客主页:C/C++语言,数据结构,Linux基础,ARM开发板,网络编程等领域UP🌍
  • 快上🚘,一起学习,让我们成为一个强大的攻城狮!
  • 送给自己和读者的一句鸡汤🤔:集中起来的意志可以击穿顽石!
  • 作者水平很有限,如果发现错误,请在评论区指正,感谢🙏

目录

一、 介绍

1. 什么是Git

2.安装Git(已装请跳过)

3. 配置Git(可跳过)

二、Git的基本使用

1. 创建新仓库

        (1)自己创建

        (2)直接 clone

2. 肆无忌惮修改环节

3. 提交更改

        (1)初始化仓库,使用 git init 命令

        (2)将当前目录下所有的修改或新增的文件添加到暂存区

        (3)提交更改

三、将代码上传至远程仓库Gitlab

1.建立本地仓库和远程仓库关系并推送

2. 本地内容上传至远程仓库

四、关于分支管理和解决冲突

1. 分支管理

2. 解决冲突

📢写在最后


一、 介绍

1. 什么是Git

        Git是一个分布式版本控制系统,由Linus Torvalds在2005年创建。它旨在追踪文件和目录的变化,并且支持多人协同工作。Git的设计目标包括速度、简单性、非线性开发(可以同时进行多个分支的工作)以及对大型项目的支持。Git是一个强大而灵活的版本控制系统,它在团队协作和个人项目管理中都有广泛的应用。通过熟练使用Git,你可以更有效地追踪项目历史、协同工作和管理代码。

2.安装Git(已装请跳过)

        首先,你需要安装Git,打开浏览器手动搜索git(不要用百度,都是广告,我这里用的Bing)

        当然你也你可以在这里直达(选择64-bit for Windows Setup),然后下载安装包,同意不pd条约,就安装完成了:Git - Downloading Package (git-scm.com)

        安装完成后,直接在桌面右键,当你看到里面有这两行,那么就安装完成了。

3. 配置Git(可跳过但还是得填)

        在开始使用Git之前,你需要配置用户信息,包括用户名和邮箱。这可以通过以下命令完成:

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

二、Git的基本使用

1. 创建新仓库

        使用Git进行版本控制的第一步是初始化一个新仓库,并进入项目目录。       

        (1)自己创建

        首先我们在桌面右键后点击 Git Bash here   然后使用 cd 命令(基本的linux命令Linux终端介绍与常用shell命令35例-CSDN博客) 进入你想要存放代码的项目目录(我这里是在桌面新建的演示目录New)

        (2)直接 clone

        你也可以选择直接克隆而不是创建新的项目目录,使用git clone +目标地址,我这里选择的是opencv库作为演示地址(具体地址自行更换copy一下)。

git clone https://github.com/opencv/opencv.git

           等待期加载完成即可,我这里就不等了跳过。

2. 肆无忌惮修改环节

        当然,很多时候你们clone 的都是自己的代码,随意修改即可(vs code还是其他都好),直到你需要提交代码。

3. 提交更改

        (1)初始化仓库,使用 git init 命令:
git init

        初始化完成后,本地文件会生成一个.git文件。

        (2)将当前目录下所有的修改或新增的文件添加到暂存区:
git add .

        (3)提交更改:

        Git通过提交来跟踪项目的更改。用于将暂存中的更改创建为一次提交,使用以下命令:

git commit -m '提交描述'

三、将代码上传至远程仓库Gitlab

1.建立本地仓库和远程仓库关系并推送

git remote add origin  http://ip地址+端口/路径/(项目名称).git 

        找到Gitlab上面http地址,克隆下来,把4492c9d4d2e9更改为指定的ip地址即可。

        然后需查看是否连接成功,使用 git remote -v 命令来查看:

gir remote -v   //检查

        如果有误则用 git remote rm origin,重新连接一下:

git remote rm origin   //重连

2. 本地内容上传至远程仓库

        如需先拉取远程仓库的master代码则先执行:

git pull --rebase origin master

        然后执行 git push -u origin master 命令:

git push -u origin master

        成功的话就可以在你的gitlab上看到了,运行界面大致如下,只要不报红色错误,基本都是成功。

四、关于分支管理和解决冲突

1. 分支管理

        分支是Git强大功能之一,可以用于并行开发和功能测试。创建新分支和切换分支的命令如下:

git branch feature-branch

2. 解决冲突

        在合并分支或拉取更改时,可能会发生冲突。解决冲突的过程包括手动编辑文件以解决冲突并提交更改。

报 fatal:remote origin already exists

        这个错误通常表示你在尝试添加远程仓库时,Git 已经存在名为 "origin" 的远程仓库。origin 是Git默认用来指代远程仓库的名称,通常与你的项目关联。

        如果你已经有了一个远程仓库,再次尝试添加 origin 将会导致这个错误。解决方法有两种:

(1)查看已有的远程仓库

        你可以先查看已有的远程仓库,确认是否已经存在名为 "origin" 的远程仓库。可以使用以下命令查看:

git remote -v

        如果已经存在 "origin",你可能不需要再次添加它。你可以直接使用已存在的远程仓库进行拉取和推送。

(2)修改已有的远程仓库

        如果你确实需要修改远程仓库,你可以使用以下命令来修改 origin 的URL:

git remote set-url origin <new-url>

        将 <new-url> 替换为新的远程仓库URL。这样可以更新 origin 的URL,而不会导致冲突。

请根据你的具体情况选择合适的方法。确保你了解项目当前的远程仓库设置,以便不会不小心覆盖或创建重复的远程仓库。

        更多C/C++语言Linux系统数据结构ARM板实战相关文章,关注专栏:

   手撕C语言

            玩转linux

                    脚踢数据结构

                            系统、网络编程

                                     探索C++

                                             6818(ARM)开发板实战

📢写在最后

  • 今天的分享就到这啦~
  • 觉得博主写的还不错的烦劳 一键三连喔~
  • 🎉🎉🎉感谢关注🎉🎉🎉

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

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

相关文章

OpenAI“宫斗”新进展!Sam Altman将重返OpenAI担任首席执行官 董事会成员改动

在经过激烈的五天讨论和辩论之后&#xff0c;高调人工智能初创公司OpenAI宣布&#xff0c;其联合创始人之一Sam Altman将回归担任首席执行官。这一决定是对上周Altman突然被解雇的回应&#xff0c;该决定引起了极大的关注和讨论。 OpenAI表示&#xff0c;他们已经达成了与Altm…

德迅云安全-德迅卫士:保障您的主机安全

主机安全是指保证主机在数据存储和处理的保密性、完整性、可用性&#xff0c;包括硬件、固件、系统软件的自身安全&#xff0c;以及一系列附加的安全技术和安全管理措施。 为什么要主机安全&#xff1f; 服务器一旦被黑客入侵&#xff0c;个人和企业面临以下安全风险&#xff…

张弛声音变现课,如何为偶像剧配音?

在为偶像剧进行配音工作时&#xff0c;配音员应当捕捉剧中角色的年轻活力、浪漫的爱情故事以及轻快的生活节奏。偶像剧主要讲述的是青春的爱恋、友谊和梦想追求&#xff0c;因此配音需要传递出剧中的真诚和活泼。为偶像剧配音可以考虑以下几点建议&#xff1a; 鲜明活泼的声音 …

如何判断交流回馈老化测试负载是否合格?

交流回馈老化测试负载是用于模拟实际工作环境中设备运行状态的测试工具&#xff0c;主要用于检测设备的耐久性和稳定性。 负载性能&#xff1a;需要检查负载的性能是否符合设计要求&#xff0c;这包括负载的功率、电流、电压等参数是否在规定的范围内&#xff0c;以及负载的工作…

【AI】行业消息精选和分析(11月23日)

今日动态 1、Sam Altman 重掌 CEO&#xff0c;OpenAI 权力斗争正式「落幕」 2、重磅好消息&#xff1a;语音 ChatGPT 现已向全用户开放 3、NVIDIA 与基因泰克合作&#xff0c;利用生成式 AI 加速药物发现 4、 英伟达Q3营收同比增长206%至181亿美元 黄仁勋&#xff1a;生成式AI时…

Zoho Bigin和标准版CRM有什么区别?

Zoho Bigin是Zoho公司推出的一款针对小微企业设计的CRM系统&#xff0c;它与Zoho CRM一脉相承&#xff0c;但更加轻量级&#xff0c;快速帮助小微企业实现数字化销售。下面来说说&#xff0c;Zoho Bigin是什么&#xff1f;它适合哪些企业&#xff1f; 什么是Zoho Bigin&#x…

【c语言】重温一下动态内存,int数组过大会造成栈错误

项目场景&#xff1a; 项目场景&#xff1a;互助群同学在刷题的过程中&#xff0c;遇到的一个题目&#xff0c;需要申请一个很大数组&#xff0c;于是这个同学就写了int[1000000],其实这样写也没有错&#xff0c;可是运行后却显示栈错误。于是就找到我来请教&#xff0c;我想就…

从零开始的c语言日记day36——指针进阶

一、什么是指针: 指针的概念:1.指针就是个变量&#xff0c;用来存放地址&#xff0c;地址唯一标识一块内存空间。 ⒉指针的大小是固定的4/8个字节(32位平台/64位平台)。 指针是有类型&#xff0c;指针的类型决定了指针的-整数的步长&#xff0c;指针解引用操作的时候的权限。…

玻璃加工ERP包含些模块?玻璃加工ERP好用吗

玻璃制品的类型多、规格不一、营销策略灵活、销售渠道广泛、生产关联业务环节。在当今这个市场竞争日益激烈的时代&#xff0c;如何有效整合各个业务环节&#xff0c;提升多部门协作效率&#xff0c;随时进行数据分析等&#xff0c;是每个玻璃加工企业面临的管理难题。 在数字…

【C语法学习】27 - 字符串转换为数字

文章目录 1 atoi()函数1.1 函数原型1.2 参数1.3 返回值1.4 转换机制1.5 示例1.5.1 示例1 1 atoi()函数 1.1 函数原型 atoi()&#xff1a;将str指向的字符串转换为整数&#xff0c;函数原型如下&#xff1a; int atoi(const char *str);1.2 参数 atoi()函数只有一个参数str&…

docker部署paddleocr

内容仅供参考学习 欢迎朋友们V一起交流&#xff1a; zcxl7_7 环境 1. CentOS7  2. docker  3. PaddleOCR2.5.2 1.准备 1. 首先准备好需要打包的项目 2. 在该项目中创建Dockerfile文件 touch Dockerfile2. 编写Dockerfile # 从Python 3.8的官方镜像中创建(pyt…

matlab使用scatter函数画图时报错“数组索引必须为正整数或逻辑值”解决办法

一、背景 在使用matlab的scatter函数画图时报错“数组索引必须为正整数或逻辑值”。 scatter函数说明&#xff1a;scatter(x,y) 在向量 x 和 y 指定的位置创建一个包含圆形标记的散点图。 二、解决办法 如果使用scatter函数时报上述错误&#xff0c;尝试将连续函数先转换为函…

ubuntu编译sqlite3并使用

SQLite3是一种轻量级的关系型数据库管理系统&#xff0c;它是在C语言基础上实现的。SQLite3具有许多优点&#xff0c;例如&#xff1a; 1.灵活&#xff1a;它可以在多种操作系统上运行&#xff0c;并且可以将多个数据库文件合并成一个文件。 2.易于使用&#xff1a;SQLite3使用…

基于爬行动物算法优化概率神经网络PNN的分类预测 - 附代码

基于爬行动物算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于爬行动物算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于爬行动物优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xff1a;针对PNN神…

八股文面试day6

什么是代理&#xff1f;为什么要用动态代理&#xff1f; 代理模式大概意思是&#xff1a;为其他对象提供一个代理项或者是占位符&#xff0c;以控制对这个对象的访问 代理模式核心思想&#xff1a;创建一个代理对象&#xff0c;在客户端和目标对象之间的一个中介&#xff0c;…

35的程序员被辞了可以自己接外包啊?为什么都那么悲观呢?

35的年纪&#xff0c;上有老下有小&#xff0c;即将步入中年危机&#xff0c;在这个节骨眼上被辞&#xff0c;能不悲观吗&#xff1f; 在这个年纪人们往往追求的是稳定的工作和生活&#xff0c;而进入一个自己不熟悉的行业并不是一个好的选择。 况且&#xff0c;你认为的外包…

诊断0x27服务解密文件DLL制作与使用

DLL文件在CANoe的使用方法 DLL文件在诊断里面可以用在0x27秘钥服务里面&#xff0c;对解密有帮助&#xff0c;在下图位置加载。 DLL文件制作 vector公司本来就给了我们一个demo&#xff0c;先拷贝一份下来&#xff0c;别把原来的文件给改坏了。我这个是CANoe12&#xff0c;de…

Visio给立方体的每条边填充不同的颜色,超好用的visio小技巧~

Visio给立方体的每条边填充不同的颜色&#xff0c;超好用的visio小技巧~ 如何实现立方体的填充颜色从左边的纯色到右边的多色呢&#xff1f;一起学起来吧~ 在visio中绘制一个普通的立方体&#xff1b; 用一个大的矩形盖住刚才绘制的立方体&#xff1b; 全选之后找到 开发工具-&…

matplotlib

设置中文字体&#xff0c;图片大小&#xff0c;分辨率&#xff0c;中文负号 符号 x轴和y轴 设置x轴和y轴的刻度 字体大小 线条样式 绘制多个线条 图例 显示每个坐标值 gca 分辨率 画布尺寸 创建图形对象 不能直接使用区域对象作画 绘制多子图 均等的划分画布 柱状图 同一位置多…

类加载过程

Java类加载过程包括加载&#xff08;Loading&#xff09;、验证&#xff08;Verification&#xff09;、准备&#xff08;Preparation&#xff09;、解析&#xff08;Resolution&#xff09;、初始化&#xff08;Initialization&#xff09;五个阶段。这些阶段是按照顺序逐步执…