`

git时光机

 
阅读更多

 

在使用git时,在未添加.ignore文件前使用 git add . 将所有文件添加到库中,不小心将一些不需要加入版本库的文件加到了版本库中。由于此时还没有提交所以不存在HEAD版本,不能使用 git reset HEAD命令。

git rm -r --cached .

 

 

撤销修改:

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

 

版本回退:

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭

git reset --hard HEAD^

 

git reset --hard HEAD^^

 

git reset --hard commit_id

 

HEAD意义 
Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

 

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

 

 

git  reset --hard  HEAD^  xxx
git  push  -f

 

参考链接:

撤销修改

版本回退

 

 

分享到:
评论

相关推荐

    git廖雪峰教程整理

    2. 时光穿梭机(版本回退) - Git允许在版本的历史之间穿梭,使用`git reset --hard`命令进行版本回退。 - 回退之前,使用`git log`查看提交历史,以确定要回退到的版本。 - 如果要重返未来,使用`git reflog`...

    Git和GitHub教程

    #### 第4章:时光机穿梭 **4.1 版本回退** - **命令**: - `git checkout -- <file>`: 回退到最近一次提交的状态。 - `git reset --hard <commit>`: 回退到指定的commit状态。 - **注意事项**: 使用硬回退前应...

    git教程pdf

    教程涵盖了安装Git、创建版本库、文件的添加与提交、时光机穿梭(版本回退)、工作区与暂存区、管理修改、撤销修改、删除文件、远程仓库的添加与克隆、分支管理、解决冲突、多人协作、标签管理等核心内容。...

    Git教程让你快速的入手Git

    3. **时光机穿梭**:这部分将教你如何使用Git记录并追踪代码的变化。仓库状态的概念会在这里详细解释,包括未跟踪的文件、已修改的文件、暂存区以及提交的历史等。此外,还会介绍`git add`、`git commit`、`git ...

    Git基础知识及常用场景,适合开发人员和初学者.docx

    #### 四、时光机穿梭 ##### 1. 版本回退 在Git中,可以通过`git log`查看历史提交记录,从而了解文件的变化过程。若要回到某个历史版本,可以使用`git reset`命令,具体操作如下: ```bash git checkout ...

    Git-2.15.1.2-64-bit.zip GIT工具-2017年最新版

    Git是世界上最流行的分布式版本控制系统,它允许开发人员追踪和管理代码变更,协同开发软件项目。Git-2.15.1.2-64-bit.zip是一个包含Git 2017年最新版(2.15.1.2)的64位Windows版本的压缩包。这个版本的Git为用户...

    git教程(廖雪峰)小结汇总(带目录)

    - **时光机穿梭**: - **检查工作区状态**:使用`git status`命令来查看工作区的状态。 - **查看修改内容**:如果`git status`显示有文件被修改,可以使用`git diff`命令来查看具体的修改内容。 - **版本回退**:...

    git教程 - 廖雪峰

    这类似于时光机的功能,可以使用`git checkout`命令加上特定的版本号来回退。 工作区和暂存区: 工作区是开发者进行文件修改的地方,而暂存区是准备提交的更改的临时区域。更改先被添加到暂存区,然后统一提交到...

    git自我学习笔记

    第五章探讨了Git的“时光机穿梭”功能,即如何查看和回退版本。`git status`、`git diff`和`git commit`等命令在这里扮演了关键角色。`git status`用来查看仓库的当前状态,`git diff`用于显示文件的具体改动,而`...

    Git版本控制1

    它提供了类似“时光机”的功能,可以随时查看过去的文件状态。此外,通过GitHub等平台,你可以公开分享你的项目,建立个人的在线简历,甚至使用Git作为云存储方案。 Git的分布式特性是其核心优势之一。与CVS、...

    微信小程序开发-时光机穿梭.pptx

    本示例中提到的“时光机穿梭”概念实际上是在引用Git版本控制中的历史记录和版本回退功能。 Git是一款分布式版本控制系统,它允许开发者追踪对文件的每一次修改。在案例中,我们首先创建并提交了一个名为`readme....

    适合初学者的git教程

    包括但不限于Git简介、版本控制系统概念、Git的诞生、集中式与分布式版本控制系统的对比、Git的安装(在Linux、MacOSX、Windows上的安装方法)、创建版本库、将文件添加到版本库、时光机穿梭(回退版本)、工作区和...

    Git教程1

    3. **时光机穿梭**: - `git status`用于查看工作区的状态,检查哪些文件被修改。 - `git diff`显示具体修改内容。 - `git add`将修改添加到暂存区,准备提交。 - `git commit`保存当前暂存区的更改到版本库。 ...

    Git和GitHub教程 2017-03-21

    #### 第4章 时光机穿梭 - **版本回退**: - 使用`git reset --hard <commit>`来回到之前的某个版本。 - **工作区和暂存区**: - 工作区:项目文件夹。 - 暂存区:用于准备提交的文件。 - **管理修改**: - 查看修改...

    git学习笔记

    **时光穿梭机**指的是通过Git能够实现对文件的添加、提交、回退等一系列操作,帮助我们管理项目的历史版本。 1. **添加文件到Git仓库** - 第一步:将文件添加到暂存区。 ``` git add readme.txt ``` - 第二步...

    Wikitimemachine:维基时光机

    **维基时光机:探索知识历史的神器** 维基时光机(WikitimeMachine)是一个创新的工具,它允许用户浏览和回溯维基百科条目的历史版本,从而揭示知识随时间演化的轨迹。这个项目是由COINS 2014 TEAM Cologne-Chicago...

    git的自动部署工具

    git的自动部署工具开发,就是通过网络连接git服务器,从git服务器上获取源代码,然后下拉到客户端,再进行自动化部署

    微信小程序demo:时光机

    目前有两个页面,作者正在更新中,你可以关注git   免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请...

    为你gitpages实现类似于TimeMachine的UI

    这个项目标题提到的“为你gitpages实现类似于TimeMachine的UI”意味着它旨在为 Git Pages 创建一个界面,该界面的用户体验和设计灵感来源于苹果的 Time Machine,后者是一款备份工具,以其独特的时光回溯功能著称。...

Global site tag (gtag.js) - Google Analytics