一文教会女朋友学会日常Git使用!Git知识总结

文章目录

    • 一文教会女朋友学会日常Git使用!Git知识总结
      • 一、git基本知识了解
        • 1.git简介
        • 2.git区域了解
        • 3.git常用命令
      • 二、常用工作场景
        • 1.克隆远程仓库,把仓库代码拉到本地
        • 2.推送代码到远程仓库
          • (1)本地代码和远程仓库版本相同,在你之前没有其他人推上代码
          • (2)在你之前有其他人推上代码,但是和你修改的不是同一个文件
          • (3)在你之前有其他人推上代码,和你修改的有同一个文件
          • (3)在a分支修改了,但是我要修改的内容应该在b分支上
      • 三、Git图形工具推荐
        • 1.vscode上自带的
        • 2.Soucetree

一文教会女朋友学会日常Git使用!Git知识总结

女朋友最近在学习git这块知识,我给他推荐了视频和廖雪峰的git文档,但是奈何新手刚开始学习,还是依然吃力,而日常工作中git这一部分使用其实并不难,所以也为了减轻女朋友的压力,这篇文章来了。

本文章涉及原理较少,主要是日常工作中直接使用,适合新手快速入门,如何想详细全面了解,还是推荐廖雪峰git讲解

一、git基本知识了解

1.git简介

Git是一个分布式版本控制系统,简单来说就是代码版本控制系统,在日常工作中,开发人员就需要利用git将各个人的写的代码放到一起。再简单来说,就是用来提交代码的。

2.git区域了解

区域这块主要便于后续操作理解,主要分成下面四个区域

  • 工作区:处理工作的区域(即做项目打代码的区域,你写代码的地方)
  • 暂存区:已完成的工作临时存放区域,等待被提交(使用git add .操作后代码进入区域)
  • 本地仓库:存放数据的地方,但是还在本电脑上(使用git commit -m "xxx"操作后代码进入区域)
  • Git远程仓库:最终的存放区域,即远程服务器(git push成功后代码推送的地方,就是代码仓库,比如Gitee、GitHub上建的仓库)

下面这张图比较直观,可以做参考

image-20240328141101581

3.git常用命令

连接远程仓库

git remote add xxx(例如:git remote add origin 复制的ssh地址或者https地址)

克隆远程仓库

git clone xxx(例如:git clone 复制的ssh地址或者https地址)

创建分支并切换到该分支

git checkout -b 分支名称

相当于 git branch dev 
	  git checkout dev

切换分支

git checkout develop

添加到暂存区

git add .

添加到本地仓库

git commit "...."

拉取远程仓库内容

git pull (例如:git pull origin dev 最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突 再推送)

推送到远程仓库

git push (例如:git push origin dev 上传到dev分支仓库)

备份当前的工作区修改的内容

git stash  备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。

读取最近一次备份的内容

git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复

二、常用工作场景

1.克隆远程仓库,把仓库代码拉到本地

这里以码云为例复制shh或者https

image-20240401134113463

执行下面克隆命令即可

git clone git@gitee.com:typhome/pinball-games.git

克隆到本地,就可以进行本地代码修改了

2.推送代码到远程仓库

推送代码到远端分为几种情况

(1)本地代码和远程仓库版本相同,在你之前没有其他人推上代码

这时执行三步骤即可

git add .

git commit "...."

git push
(2)在你之前有其他人推上代码,但是和你修改的不是同一个文件

这个时候需要先把别人的代码拉下来了,先进行git pull

git pull

git add .

git commit "...."

git push
(3)在你之前有其他人推上代码,和你修改的有同一个文件

这个时候直接git pull会报错,具体详细可以看我另一篇博客:解决git pull时出现冲突无法pull的问题

主要方法就是将代码提到git栈中进行储藏,然后拉下代码后再应用,

主要步骤

git stash

git pull

git add .

git stash pop 
(解决冲突)
git add .

git commit "...."

git push

(3)在a分支修改了,但是我要修改的内容应该在b分支上

这个时候在a分支修改了,没有提交,直接切换到b分支上会报错切换不了,这个时候也需要用到stash了

//先进行备份
git stash
//切分支
git checkout b
//拉下最新代码
git pull
//再应用推送即可
git add .

git stash pop
(解决冲突)
git add .

git commit "...."

git push

以上几种情况基本满足日常工作需求,主要就是代码拉取和推送

三、Git图形工具推荐

平常敲命令可能过于麻烦,或者不那么直观,这里推荐两个我常用的,提高开发效率,但是建议在git命令熟悉后或者使用一段时间后,再使用图形界面操作git

1.vscode上自带的

image-20240401142403154

可以看修改代码对比、切换分支、提交、stash等等,也是非常直观方便

2.Soucetree

image-20240401143104695

Soucetree是我最常用的git图形界面了,相比于vscode自带的更直观了,对于分支的操作更方便。

我认为唯一不足的就是修改代码对比,soucetree只显示修改行对比,而vscode的左右代码整个文件对比感觉更直观一点。

这两种方式具体操作这里不具体介绍了,大家自行百度即可。有什么看法也欢迎讨论~

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

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

相关文章

细谈SolidWorks教育版的一些基础知识

SolidWorks教育版是一款广泛应用于工程设计和教育领域的三维建模软件。它具备直观易用的操作界面和强大的设计功能,为学生提供了一个学习和实践的平台。在本文中,我们将详细探讨SolidWorks教育版的一些基础知识,帮助初学者更好地了解和掌握这…

鸿蒙实战开发-如何使用三方库

使用三方库 在使用三方库之前,需要安装 ohpm,并在环境变量中配置。 在项目目录的Terminal窗口执行ohpm命令下载依赖 ohpm install yunkss/eftool 命令运行成功后,在项目的oh-package.json5文件中会自动添加上依赖,如下所示&am…

【氮化镓】GaN器件中关态应力诱导的损伤定位

概括总结: 这项研究通过低频1/f噪声测量方法,探究了在关态(OFF-state)应力作用下,AlGaN/GaN高电子迁移率晶体管(HEMTs)中由应力引起的损伤的定位。研究中结合了电致发光(EL&#xf…

【Java面试题系列】基础篇

目录 基本常识标识符的命名规则八种基本数据类型的大小,以及他们的封装类3*0.10.3返回值是什么short s1 1; s1 s1 1;有什么错? short s1 1; s1 1;有什么错?简述&&与&的区别?简述break与continue、return的区别?Arrays类的…

(负载点电源)PCD3203高转换率同步降压40V/3A内置高低侧MOSFET只需极少外围元件

1. 产品特性 ➢ 输入电压范围: 4.5V~40V ➢ 最大负载: 3A ➢ 上下管导通电阻: 110mΩ/70mΩ ➢ 软启保护时间 tss: 1ms ➢ 工作频率范围: 500kHz~2.5MHz ➢ 逐周期峰值电流限制 ➢ 内部补偿 ➢ 可调的输入欠压…

这个AI 应用万人使用:真人视频转动漫、手绘风,丝滑感前所未有

视频的次元壁就这么被打破了。 在 AI 的加持下,真人视频变身二次元就这么简单 只需要导入原始视频,它就可以帮你把视频改成你想要的风格,比如动漫风、手绘风或者 3D 卡通风格。 这一应用一经推出立刻引起了很多人的关注 因其操作简单&#x…

蓝桥杯-穿越雷区

题目要求 需求:从一个方格中A点,按要求移动到B点。 要求:每次只能走上下左右,每次只能走一次,每次是轮换穿越’‘,’-两个,否则就会能量失衡,发生爆炸。 使用的算法:这题典型的就是使…

nginx的安装教程

文章目录 简介nginx安装windows下安装linux下安装 简介 nginx是一个开源的web服务器和反向代理服务器,可以用作负载均衡和HTTP缓存。它处理并发能力是十分强大的,能够经受高负载的考验。 正向代理 Nginx不仅可以做反向代理,实现负载均衡&am…

AI工作站设计方案:903-多路PCIe3.0的单CPU 学习型AI工作站

多路PCIe3.0的单CPU 学习型AI工作站 一、机箱功能和技术指标: 系统 系统型号 ORI-SR500 主板支持 EEB(12*13)/CEB(12*10.5)/ATX(12*9.6)/Mi cro ATX 前置硬盘 最大支持2个3.5寸1个2.5寸SATA 硬盘2个2.5寸SATA 硬盘 (背部) 电源类型 C…

【Django开发】前后端分离美多商城项目第4篇:用户部分,1. 判断用户名是否存在【附代码文档】

美多商城项目4.0文档完整教程(附代码资料)主要内容讲述:美多商城,项目准备1.B2B--企业对企业,2.C2C--个人对个人,3.B2C--企业对个人,4.C2B--个人对企业,5.O2O--线上到线下,6.F2C--工厂到个人。项目准备,配置1. 修改set…

阿里云服务器ECS经济型e实例怎么样?

阿里云服务器ECS经济型e系列是阿里云面向个人开发者、学生、小微企业,在中小型网站建设、开发测试、轻量级应用等场景推出的全新入门级云服务器,CPU处理器采用Intel Xeon Platinum架构处理器,支持1:1、1:2、1:4多种处理器内存配比&#xff0c…

vue3组合式函数

vue3的组合式函数的作用是封装和复用响应式状态的函数。只能在setup 标签的script标签汇总或者setup函数中使用。 普通的函数只能调用一次,但是组合式函数接受到响应式参数,当该值发生变化时,也会触发相关函数的重新加载。 如下 定义了一个…

算法(滑动窗口四)

1.串联所有单词的子串 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如,如果 words ["ab","cd","ef"]&#xff…

《QDebug 2024年3月》

一、Qt Widgets 问题交流 1. 二、Qt Quick 问题交流 1.Qt5 ApplicationWindow 不能使用父组件 Window 的 transientParent 属性 ApplicationWindow 使用 transientParent 报错: "ApplicationWindow.transientParent" is not available due to compone…

Android车载设备开发相关名词介绍

一、通讯相关 1、ECALL 如遭遇紧急情况,用户可按下该键以最高优先级接通呼叫中心,人工坐席将同时获取客户车辆的重要数据并协助驾驶员脱离危险。 实现原理 E-Call 的核心思想是利用车载卫星定位系统获取车辆的位置信息,在事故发生后&#x…

性能测试入门 —— 什么是性能测试PTS?

性能测试PTS(Performance Testing Service)是一款简单易用,具备强大的分布式压测能力的SaaS压测平台。 PTS可以模拟复杂的业务场景,并快速精准地调度不同规模的流量,同时提供压测过程中多维度的监控指标和日志记录。您…

输出100~200之间的素数(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现素数判断函数&#xff1b; int Prime(int number) {//初始化变量值&#xff1b;int divided 2;int JudgementCondition 0;//循环判断素数&#xff1b;wh…

Git的使用【入门级】--下载github项目

1.下载Git Git for Windows Windows版本进入如上网址下载&#xff1a; 点击Download即可&#xff0c;建议下载到内存多的盘&#xff0c;我是下载到移动固态优盘中&#xff0c;以免C盘太挤。 验证Git是否安装成功&#xff1a; 双击git-bash.exe&#xff0c;命令行输入git versi…

【Django开发】0到1美多商城项目md教程第4篇:图形验证码,1. 图形验证码接口设计【附代码文档】

美多商城完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;欢迎来到美多商城&#xff01;&#xff0c;项目准备。展示用户注册页面&#xff0c;创建用户模块子应用。用户注册业务实现&#xff0c;用户注册前端逻辑。图形验证码&#xff0c;图形验证码接口设…

SQL,group by分组后分别计算组内不同值的数量

SQL&#xff0c;group by分组后分别计算组内不同值的数量 如现有一张购物表shopping 先要求小明和小红分别买了多少笔和多少橡皮&#xff0c;形成以下格式 SELECT name,COUNT(*) FROM shopping GROUP BY name;SELECT name AS 姓名,SUM( CASE WHEN cargo 笔 THEN 1 ELSE 0 END)…