版本控制工具之Git基本操作

news2024/11/14 13:34:48

在这里插入图片描述
Git 相对较新的版本控制工具,特点为分布式。
每一台客户端都具有完整的版本备份,所有的版本提交都不需要依赖中心服务器。只有在多人协同时,服务器会处理并发情况。

一、Git 环境安装

👉链接:https://blog.csdn.net/weixin_43624626/article/details/130247984

二、重要概念

在这里插入图片描述

概念名含义
1. 开发库(工作区)相当于写代码的文件夹。
2. 受控库(版本库)Git内部备份的位置
3. 产品库(远程仓)远程的服务器

三、Git使用教程

(一) 可视化操作

1.版本库创建

  1. 首先要新建一个文件夹,设置为Git的初始化仓库,后续的版本控制就基于这个文件夹。
    注意:不要直接在桌面上初始化仓库,因为桌面本身也是一个文件夹。
    我们可以桌面上新建一个文件夹,例如Demo
  2. 进入到新创建的Demo文件夹,鼠标右键,点击“Git在这里创建版本库”,在弹出的窗口连续点击确定即可。
    在这里插入图片描述
  3. 可以看到文件夹没有任何变化,此时可以在Windows中点击查看—显示—隐藏的文件,开启后,可以看到Demo文件夹中多了一个.git隐藏文件夹,这就是Git的配置信息。
    🚨这个隐藏文件夹千万不要动,如果动了请删除此文件夹,重新执行第2步。
  4. 为了后续方便使用,需要增加文件夹图示功能
    转自~:https://blog.csdn.net/m0_46611181/article/details/105075249
    (感谢该博主提供的解决方式🫰)
  5. 重启后可以看到桌面的Demo文件夹出现对勾图示。

2.使用TortoiseGit提交开发库内容到受控库

  1. 在Demo文件夹中新建一个hello.txt的文本文档。

  2. 此时hello.txt文件在工作区,需要提交到受控库。在Demo文件夹中鼠标右键,点击“Git提交”。

  3. 如果弹出一个设置用户名和电子邮箱的窗口,点击是。

  4. 在弹出的“Git采用分层次的配置结构…”窗口中,直接点击确定。

  5. 在弹出的窗口中输入用户名和邮箱,建议用户名使用纯英文,邮箱使用qq邮箱,输入完成后确定。
    在这里插入图片描述

  6. 在弹出的提交窗口中,输入日志信息,选择要提交的文件后点击提交按钮。
    在这里插入图片描述

  7. 弹出一个提交的进度条窗口,进度条走完以后,直接点击“关闭”。
    在这里插入图片描述

  8. 可以看到文件上出现绿色对勾。

3.查看版本记录

14.在Demo文件夹中鼠标右键,点击TortoiseGit,点击显示日志
在这里插入图片描述
可以看到之前提交的记录。
在这里插入图片描述

4.更新第二版

  1. 打开hello.txt,随便输入一些内容,保存关闭。
  2. hello.txt图示变为红色叹号。
  3. 重新执行第7步的操作,更新第二版。
  4. 第二版更新后,重新执行14步查看版本日志,可以看到第二版的记录。

5.版本回退

  1. 在版本日志中选中第一个版本,鼠标右键,点击“重置master到这个版本”
  2. 在弹出的窗口中,选择重置类型为“Hard”,点击确定。
  3. 在进度窗口完成,关闭窗口,可以看到hello.txt回到了第一个版本。

6.版本前进

  1. 在Demo文件中,鼠标右键,点击TortoiseGit,点击“显示引用记录”

  2. 在引用记录中选中第二个版本,鼠标右键,点击“重置master到这个版本”

  3. 在弹出的窗口中,选择重置类型为“Hard”,点击确定。
    在这里插入图片描述

  4. 在进度窗口完成,关闭窗口,可以看到hello.txt前进了第二个版本。

(二) 命令操作

1.进入Git命令模式

  1. 在Demo文件夹中鼠标右键,点击Git Bash Here

2.Git命令提交开发库内容到受控库

  1. 进入命令模式,输入下面的命令
    git add * ,把当前目录下所有的更新文件选中
  2. 提交之前查看开发库的状态
    git status
    返回值结果中有两种情况
    (1)显示一些文件名称,前面有modified(修改)或new(新内容)这样的字眼。这种情况下表示后续可提交到受控库。“脏”
    (2)不显示文件名称,显示的内容是:nothing to commit,这种情况表示开发库没有更新,不可提交到受控库。“干净”
  3. 提交到受控库,使用下面命令
git commit -m "日志信息"

3.查看日志

  1. 查看版本日志。git log

4.版本回退

  1. 查看引用记录
git reflog

在这里插入图片描述
7. 在引用记录中可以看到每个版本开始对应黄色版本ID号
8. 使用下面的命令进行版本回退

git reset --hard 版本ID号

5.版本前进

  1. 同样使用版本回退的方法,执行6-8步

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

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

相关文章

「速通Shell」初次走近Shell,Shell是什么?

目录 初次走进ShellShell是什么Shell工作原理 Shell分类Shell的优势 第一个Shell脚本Hello WorldShell执行方式绝对路径执行相对路径执行脚本命令执行系统命令执行 总结 对于开发者来说,除了掌握Java、C/C等主要编程语言外,还需要掌握支撑性的工具语言和…

Vagrant 安装

系列文章目录 文章目录 系列文章目录前言一、安装地址二、安装步骤注意事项三、常用命令四、问题总结 前言 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内…

机器人方向的人工智能工具是助手还是平替

本文内容严格按创作模板发布: 近日育碧开发了人工智能工具 Ghostwriter,可以一键生成游戏NPC对话。不少游戏开发者担心AI写手工具的出现会让自己“饭碗”不保,但Swanson表示这个工具只是为了提供第一稿的 barks来减少对话生成工作的繁琐度。…

Linux网络编程TCP粘包问题解析及解决方法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、一次发送多个数据实验二、导致问题的原因三、解决方案之一:延时发送四、知识点补充发送缓冲区和接收缓冲区五、解决方法总结 前言 本篇文章将引…

Java-JDK动态代理(AOP)使用及实现原理分析

Java-JDK动态代理(AOP)使用及实现原理分析 第一章:代理的介绍 介绍:我们需要掌握的程度 动态代理(理解) 基于反射机制 掌握的程度: 1.什么是动态代理? 2.动态代理能够做什么? 后面我们在用Spirng和Mybatis的时候,要理解怎么使用的. 1.什么是代理? 代理…

PID循迹机器人及整定

如何对线路循迹机器人进行编程 如何对线路循迹机器人进行编程 (robotresearchlab.com)PID调谐文章:http://robotresearchlab.com/2019/02/16/pid-line-follower-tuning/ 介绍人们选择对循迹机器人进行线路编程的两种主要方式,并比较两者。将详细比较“…

绘声绘影2023简体中文版新功能介绍

会声会影是一款专业的数字音频工作站软件,它提供强大的音频编辑和制作功能,被广泛应用于音乐创作、录音棚录制以及现场演出等领域。会声会影的最新版本会声会影2023将于2022年底发布,主要功能和新功能详述如下: 会声会影2023主要功能: 1. 直观易用的界面:会声会影采用简洁而不…

C语言入门篇——数组篇

目录 1、数组 2、一维数组的创建和初始化 2.1数组的创建方式: 2.2数组的初始化 2.3一维数组的使用 ​2.4一维数组在内存中的存储 3、二维数组的创建和初始化 3.1二维数组的创建 3.2二维数组的初始化 3.3二维数组的使用 3.4二维数组在内存中的存储 4、数组…

SpringBoot中一个注解优雅实现重试Retry框架

目录: 1、简介2、实现步骤 1、简介 重试,在项目需求中是非常常见的,例如遇到网络波动等,要求某个接口或者是方法可以最多/最少调用几次;实现重试机制,非得用Retry这个重试框架吗?那肯定不是,相信…

【云计算•云原生】2.云计算环境下的新趋势—云原生

文章目录 1.什么是云原生2.云原生概述2.1 微服务2.2 容器云2.3 serverless无服务器2.4 DevOps2.5 持续集成和持续交付2.6 openStack 1.什么是云原生 按照自己的理解,可以将云原生拆分成云原生,云就是上一节中的云计算的云;原生即为诞生的环境…

Visual Studio C# WinForm开发入门(3):各种控件介绍

1、窗体 窗口就是打开程序我们所面对的一个面板,里面可以添加各种控件,如下图所示,我们可以在属性栏设置其标题名称、图标、大小等。 双击标题框,会生成Load函数,也可以到事件里面去找 Load函数是窗口生成后需要…

Spring Doc OpenAPI3.0 抛弃SpringFox拥抱SpringDoc

Spring Doc 1 简介 SpringDoc是SpringBoot 的API文档工具。官网:https://springdoc.org/ 在使用SpringBoot 2.6以前去创建API文档工具一般会采用SpringFox提供的Swagger库,但是由于SpringBoot版本的不断升级和SpringFox摆烂不更新,导致了S…

springboot项目需要读取非application.yml/properties 的配置文件

目录: 1、操作步骤2、总结3、扩展4、第二种方法获取配置文件bean 1、操作步骤 1.新建配置文件: 2.编辑配置文件: test-serverrd-dev02.jr.rong360.com3.新建Config类: Component PropertySource(value "kirara.properti…

销量破亿,董洁直播间凭何出圈?

近期,“没有五位数走不出”的董洁直播间火了…… 纵观这几年各大平台直播带货,火已不是什么新鲜事,而为何董洁的直播能火上热搜呢?本期,千瓜将解析董洁直播,同品牌方聊聊小红书直播的那些事儿。董洁「种草式…

Win10分辨率怎么看?2种必须学会的方法!

案例:win10分辨率 【为了方便办公,最近我的电脑连接了2个显示屏,但感觉电脑显示怪怪的,可能是分辨率设置不对,大家知道应该怎么查看电脑的分辨率吗?感谢感谢!】 我们的win10系统支持多种分辨率…

ChatGPT的未来:人工智能技术的新发展趋势

第一章:人工智能技术的新发展趋势 近年来,随着人工智能技术的不断发展和应用,ChatGPT这样的大型自然语言处理模型已经成为人工智能技术的重要组成部分。未来,人工智能技术的发展将更加快速,我们可以看到以下几个方面的…

制造型企业为何需要MES管理系统,企业怎样选择合适的MES

MES管理系统是专门针对制造型企业而设计的,能实现对生产车间、工厂信息化管理,帮助制造型企业提高生产效率,加快数字化转型。目前针对制造型企业生产效率、企业竞争力和生产管理状况的需求,MES管理系统已经成为实现生产经营目标的…

MySQL创建用户并赋权限

MySQL创建用户并赋权限 省流1.创建mysql用户1.1 新建用户1.2 查询用户信息 2. 授权用户2.1 指定数据库和表赋权2.2 赋予全部权限2.3 查看用户权限2.4 回收用户权限 3. 修改用户密码4. 删除用户5. 刷新权限(务必执行) 省流 如果只是希望新建一个用户并且赋予全部执行权限&#…

android react native报错

1.报错图片 解决方案: android下的build.gradle文件 修改 如图 报错 E:/androidData/caches/transforms-2/files-2.1/399126eae79af6235d7a4ae871926a31/jetified-kotlin-stdlib-1.6.10.jar!/META-INF/kotlin-stdlib.kotlin_module: Module was compiled with an i…

华为云 HCIP云迁移 学习课程提供的考试样题提交之后没有反馈正确答案的问题

最近在考HCIP的云迁移,但是他提供的考试样题昨晚发现没有正确答案,只会告诉你对错,判断题还好解决,但是多选题就麻烦了。这边研究了一下,share一下,方便大家学习和验证自己的学习成果 这边去看了他的 api r…