Git基础学习(三)

文章目录

  • 常规操作
    • [1. 版本回退](#1. 版本回退)
    • [2. 理解工作区与暂存区的区别](#2. 理解工作区与暂存区的区别)
    • [3. Git撤销修改和删除文件操作](#3. Git撤销修改和删除文件操作)

常规操作

1. 版本回退

要将Git存储库版本回退,请使用git reset命令。如果您想要撤消上次提交并返回到上一个提交,则可以使用以下命令:

bash 复制代码
git reset HEAD~1

这将使HEAD指向上一个提交,但不会删除您最新的更改。如果您希望完全返回到以前的提交并放弃所有更改,则可以添加--hard选项:

bash 复制代码
git reset --hard HEAD~1

请注意,此操作将永久删除您最新的更改,请谨慎使用。如果您已经将更改推送到远程存储库,则在执行此操作之前应先备份这些更改。

2. 理解工作区与暂存区的区别

Git有三个主要的工作区域:工作区(working directory)、暂存区(staging area)和版本库(repository)。

工作区是指您电脑文件系统上用于修改文件的目录。在这里,您可以创建、编辑和删除文件。

暂存区是一个中间状态,它充当了您提交更改的缓冲区。在Git中,您必须明确地将文件添加到暂存区,然后才能将其提交到版本库中。这样做的好处是,您可以对每个更改进行精细控制,并确保只提交需要保存的更改。

版本库包含Git存储库的所有历史记录和元数据。它是Git存储库的核心组成部分,是由Git自动维护的。

简而言之,工作区是您正在处理的实际文件,而暂存区是下一次提交所需更改的文件列表。它们之间的区别在于,您可以对工作区中的任何文件进行修改,但只有将它们添加到暂存区并将其提交到版本库中,它们才会成为Git跟踪的部分。

3. Git撤销修改和删除文件操作

要撤销对文件的修改,可以使用git checkout命令:

bash 复制代码
git checkout -- <filename>

此命令将覆盖工作树中指定文件的更改,还原为最近提交或上次检出的状态。

要删除文件并将此更改提交到Git存储库中,可以使用git rm命令:

bash 复制代码
git rm <filename>
git commit -m "Remove file"

这将从工作树和版本历史记录中删除指定的文件。如果只是想从Git版本库中删除文件但保留在工作树中,则可以使用git rm命令的--cached选项:

bash 复制代码
git rm --cached <filename>
git commit -m "Remove file from repository"

这将从版本历史记录中删除指定的文件,但保留在工作树中。

相关推荐
程序员沉梦听雨6 小时前
【Git】git-submodule子模块管理
git
叼烟扛炮6 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain
旖旎夜光7 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习
LONGZHIQIN7 小时前
STM32学习笔记
笔记·stm32·学习·arm
redtank20007 小时前
纯血鸿蒙小工具三件套实测:弹幕手持、爱记录与仓库管理软件
学习·华为·智能手机·harmonyos
§ꦿCFོ༉7 小时前
嵌入式八股文—C语言入门学习(二)
c语言·学习·嵌入式·编程语言
Nerd(BUG版)8 小时前
KMP学习day5--Kotlin Flow异步流基础
开发语言·学习·kotlin
叼烟扛炮8 小时前
Linux 学习笔记(六十一):网络编程毕业设计——Reactor 反应堆模式
linux·网络·笔记·学习·课程设计
叼烟扛炮10 小时前
Linux 学习笔记(五十九):epoll 的生死抉择——LT 与 ET 模式
linux·运维·服务器·网络·笔记·学习·php
水云桐程序员17 小时前
从零开发软件的步骤,软件开发从零到完成应该怎么做?
笔记·学习·软件构建·个人开发