在开发过程中,git的版本管理越来越普及.在版本管理中,最常用和最重要的是重置提交的版本,恢复后悔做了的事.大家都知道用reset命令.但是有几种形态需要整理共享一下,也方便我自己查阅. 一.首先解析以下这三个相关的状态和概念, 1.HEAD:可以描述为当前分支最后一个提交.即本地的信息中的当前版本. 2.Index:在工作副本修改之后执行过git add操作的版本文件,可以commit了的. 3.Working Copy:工作副本是你正在修改,但是没有执行任何git操作的文件. 总的来说, 代…
http://alpha-blog.wanglianghome.org/2010/07/30/git-partial-rollback/ reset(版本撤回) 格式 git reset [-q] [<commit>] [--] <paths>...git reset (--patch | -p) [<commit>] [--] [<paths>...]git reset (--soft | --mixed | --hard | --merge | --ke…
命令格式 git reset [-q] [<tree-ish>] [--] <paths>…​ git reset (--patch | -p) [<tree-ish>] [--] [<paths>…​] git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>] 命令格式 -- soft 回退版本,但不会回退工作区与暂存区的修改. -- mixed…
git的reset的理解 1.在理解reset命令之前,先对git中涉及到的与该reset命令相关概念进行说明和解释HEAD这是当前分支版本顶端的别名,也就是在当前分支你最近的一个提交Indexindex也被称为staging area,是指一整套即将被下一个提交的文件集合.即将成为HEAD的父亲的那个commitWorking Copyworking copy代表正在工作的那个文件集 2.下面对reset命令进行解释:reset命令就是置HEAD(当前分支的版本顶端)到另外一个commit:但…
https://www.atlassian.com/git/tutorials/resetting-checking-out-and-reverting/file-level-operations 最近不小心在自己的git branch上误提交了一些改动,想回到之前的状态(就是working directory还是commit后的状态,但commit history往回退一个版本,所有改动还没有放到stage上).搜了一些文章,上面的文章应该讲的比较详细(以上的git教程看起来也不错,可以留用)…
作为一个前端,git的各种指令应该是需要掌握的,因为前一段时间遇到了一些问题,总觉得每次遇到点问题都去百度这样总归不大好,还是记录一下比较常见的一些指令吧.以后遇到新的再继续添加. 1. 新建本地分支  git checkout -b my-test 2. 强制把远程库的代码跟新到当前分支上面   git pull --rebase origin master 3. 在另一个远程分支里把本地分支的更改合并进去  git merge my-test 4. 提交commit时绕过eslint的检查 …
1. 关于git bash常用指令 推荐博客: 史上最简单的 GitHub 教程  猴子都能懂的GIT入门 Learn Version Control with Git for Free Git Documentation  Git Book 2. 常用指令: git config --global user.name "名字" git config --global user.email "邮箱" git status 查看当前状态 git init 初始化本地仓…
刚刚提交了三个commit, git reflog显示如下: 最后一个commit在文件末尾加了一行:v3,以此类推: 下面,使用git reset --hard commitID来进行commit回退:(应该回滚的时工作区的commit版本吧) 1)回到最后一个commit之前,即回到v2后的版本: git reset --hard fe0b7d6 ( 亦可以使用快捷的方式: git reset --hard HEAD ^   ,^ 表示回到上一个版本,如果需要回退到上上个版本的话,将HEAD…
https://blog.csdn.net/longintchar/article/details/81843048 1.三棵树. 此时如果我们运行 git status,会发现没有任何改动,因为现在三棵树完全相同. 修改文件 现在我们想要对文件进行修改然后提交它.我们将会经历同样的过程:首先在工作目录中修改文件. 我们称其为该文件的 v2 版本,并将它标记为红色. 如果现在运行 git status,我们会看到文件显示在 “Changes not staged for commit” 下面,并…
git reset 命令详解(一) git reset 命令详解(二) reset命令的语法:git reset [选项]  [版本号]  [要回退的目标] 选项:--soft仅将head指针指向历史版本 --mixed将head指针指向历史版本,且用历史版本的暂存区覆盖当前暂存区(默认的选项)   --hard将head指针指向历史版本,同时覆盖工作区和暂存区的内容(比较危险慎用) 版本号:可以是某个绝对的版本号,也可以是用head指针指向的相对版本号(默认head所指的当前版本) 要回退的目…