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

git 怎么切换分支命令_【基础知识】Git实战记录

虽然已经使用了很久Git,但是一直属于蒙蔽状态,还没有完全掌握其功能,也没有将其发挥出百分百的作用,所以特此记录一次完整的Git实战演练。

——感谢B站up主 老陈打码 respect respect respect。

一.初始化Git

e25f5c5700056985bde9dfca19e4650a.png

在常用的工作目录下创建一个Codes文件夹(该文件夹将作为本次实战演练的测试文件夹),在该文件夹下 右击鼠标 选择Git Bash Here ,输入命令:

git init

那么在文件夹中就会出现一个隐藏的 .git文件夹。这就是Git 初始化成功的结果。

二.创建版本库与仓库状态

上述 git init 命令即为创建版本库的命令。

查看版本库状态,命令:

git status

81a861fa9cdd778ec38b22af527c4738.png

可以看到,目前在master分支上,还没有任何提交,也没啥好提交的 。

创建一个 a.txt 文件进行测试。

69a20428feaf33683db81350b4c1db6c.png

再次执行 git status 命令。

8fca9e41d367ae79f1ae913d0043eb9c.png

可以看到这时git自动察觉到 一个未追踪的 a.txt 文件

也可以看到,它建议使用  git add 指令将文件添加进暂存区

2567de14cf5b49514a6654bc1c465174.png

键入命令:

git add a.txtgit status

可以看到,存在一个新的文件 待提交

这时,修改 a.txt 文件,接着执行 git status命令。

a1492068656f852418bbb22f6bb382e0.png

可以看到,git已经察觉到 a.txt文件已被修改。

给出的建议是 可以再次执行 git add 进行更新,或者执行 git restore命令来撤销修改。

将文件提交到本地仓库暂存区,命令:

git commit -m 'something you describe'

7fca7a4c8ebf6b2eff962b3cc9fa903f.png

执行 git status 命令来查看此时的仓库状态

5ebc7691a2fe9691b43a2890d527e2f2.png

可以看到,此时的仓库是十分干净的,没有什么需要提交的,也没有新的文件或者修改的文件待处理。

此时,修改a.txt 再次提交声明 v2.0版本

1b93ac82feedd766d10ff2caa0864763.png

二.Git版本切换

继续承接上文,那么如果说提交了 v2.0版本后,后悔了,怎么撤回到 v1.0版本呢?本章节将会进行这方面的学习。

如何查看版本?命令:

git log

69d7170a6a833f1702356572b1a7b150.png

这样通过提交时间与提交时的版本描述就可以很快速的查找到版本号。

此时,在文件夹中再创建一个新的文件 b.txt文件。

17b15c3ffa3a710cc7218291b1017701.png

命令:

git add *

全部文件进行添加。

48749a17c211e578be2ab5715cfd2096.png

v3.0版本已提交完毕。

68e036ee6bb0e5a83506b37c513d80fc.png

回退到 v2.0 命令:

git reset --hard HEAD^

这个 ^的个数代表了向上返回几层。

2689a4daf0480f59d698d8c848b12205.png

同时,回撤到2.0版本也把b.txt文件删除了。

fdf6c20ef8955fe601aedb070bd9dd1b.png

现在,又后悔了,又想回到3.0版本。

a19d355ddd09e9d1c7bf38ac193a90dc.png

需要先找到3.0版本的id。命令:

git reset --hard id

b25a97863163bb9eac95b87c1f413d5e.png

已经回到了3.0版本。

命令:

git reflog

记录每一次的抽风操作,以及查看自己当前在哪一层版本

e46fc660f37c2e4c1af304e9f3756a7a.png

三.Git撤销修改

命令:

git diff

在a.txt中随意添加几行字

72e495c9b73b086bf70682561ac6b707.png

撤销命令:

git restore

撤销已经commit的文件,命令:

git restore --staged 

四.Git删除文件

在文件夹中将 b.txt 文件删除

ae9cafc065a766d468a293ae9d4507ae.png

那么此时,暂存区中的文件与实际文件夹中的文件不一致,在暂存区中删除文件命令:

git rm b.txt

1e5d4cc96c53b652f2b45ad9b94a398e.png

五.Git更新到远程仓库以及从仓库中拉取数据

(1)上传到GitHub

fe81be0160d3f6a7772339c696370e09.png

创建一个新的仓库

103e5b1b0ae806e33903bce2f1347077.png

git也已经给了如何提交代码的命令

此时,在Codes文件夹中创建一个 index.html,然后随便写点什么

904404160fad5e84fb7d25603f5bb540.png

f3a4769b16449ff5314a768cd9b7a73a.png

d5adae3d9ac798315de49ad3edad43ff.png

47ca0e6bc34e6a0a49d4374c7bb336cc.png

六.Git——分支的 创建 删除 合并

410bee3c708f32065049d8cc84f5a367.png

在Codes文件夹中添加algri和python两个文件夹,并创建与文件夹同名的.txt文件。

创建并切换新分支,命令

git checkout  -b dev

1d6511fe85aa36402019b70b73175819.png

切换回 master 分支

git checkout master

创建分支 test

git branch test

查看所有分支

git branch

常用git 命令图表

c924986bc676a2b3462200f7cdab37ab.png

相关文章:

  • iso linux 内核版本号_给Linux系统更换内核(基于优麒麟Linux)
  • elementui from表单提交_跟我一起编写Vue3版ElementUI
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • 事物的开始和结束命令分别是什么_王者荣耀S22赛季什么时候开始?王者荣耀s21赛季结束时间...
  • map分组后取前10个_SQL分组查询后取每组的前N条记录
  • 烧结多孔砖孔洞率_烧结砖各种缺陷消除方法
  • 华为云计算面试需要掌握的知识_一文快速掌握华为云IPv6基础知识及使用指南...
  • awr报告分析 mysql_爱数AnyRobot:一文详解Oracle运维分析实践
  • 如何分析案件的性质_对涉黑犯罪案件,刑事律师如何阅卷?
  • scara工业机器人外观_scara工业机器人有哪些知名的品牌?
  • 二项分布最值推导_杨志明:高考数列中的最值与范围问题
  • css文字中间加竖线_前端初学者李不白,html+css的角度,带你分析蘑菇街官网!!!...
  • 笔记本电脑频繁自动重启_电脑一直自动重启,教您电脑一直自动重启怎么解决...
  • 动词ing形式的5种用法_动词ing形式的5种用法
  • python tcp处理_Python-对Pcap文件进行处理,获取指定TCP流
  • javascript 总结(常用工具类的封装)
  • JS基础之数据类型、对象、原型、原型链、继承
  • Laravel5.4 Queues队列学习
  • Redis 中的布隆过滤器
  • select2 取值 遍历 设置默认值
  • spring学习第二天
  • UMLCHINA 首席专家潘加宇鼎力推荐
  • Vue全家桶实现一个Web App
  • 关于springcloud Gateway中的限流
  • 技术发展面试
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 如何利用MongoDB打造TOP榜小程序
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 通过git安装npm私有模块
  • 物联网链路协议
  • 协程
  • 一个完整Java Web项目背后的密码
  • 硬币翻转问题,区间操作
  • Java数据解析之JSON
  • 翻译 | The Principles of OOD 面向对象设计原则
  • ​2021半年盘点,不想你错过的重磅新书
  • #AngularJS#$sce.trustAsResourceUrl
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #Z2294. 打印树的直径
  • (06)金属布线——为半导体注入生命的连接
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (四)汇编语言——简单程序
  • (转)JAVA中的堆栈
  • (转)visual stdio 书签功能介绍
  • 、写入Shellcode到注册表上线
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .Net 高效开发之不可错过的实用工具