git中的区域划分为工作区(WorkSpace)、暂存区(Stage/Index)、本地库(Local Repo)和远程库(Remote)四个区域。 同时git reset还需要跟三个参数联合使用,效果更好 --hard --mixed --soft 三个指令的区别:对于工作区、暂存区、本地仓库的回滚的粒度范围不一样,可以根据实际的需求选择不同的参数来回滚不同区域的...
如果有良好的add,commit的习惯(根据工作进度及时commit,不要所有的东西一次性梭哈)建议使用--hard模式,但是同时可以跟其它的指令综合使用,比如 1、 git reset xx [file](等于git reset --mix ,mix可省略) 还原版本,移动HEAD到指定得位置,比如有A-B-C(HEAD)分支,现在在C提交,如果执行git reset B,则代表把HEA...
git reset <要回滚到的 commit>或者git reset --hard <要回滚到的 commit> 需注意的是,提供的是要回滚到的 commit,该 commit 之后的提交记录会被丢弃。 示例: change-in-local-repo.png git reset默认会将被丢弃的记录所改动的文件保留在工作区中,以便重新编辑和再提交。加上--hard选项则不保留这部分内容,...
Index/Stage:暂存区,或者叫做待提交更新区;在提交进入repo之前,我们可以把所有的更新放在暂存区。 Local Repo:本地仓库,一个存放在本地的版本库;HEAD会指示当前的开发分支(branch)。 Stash:是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。 有了上面概念的了解,下面就开始在本地repo上进行Git的操作了。
local repository:本地仓库 remote repository:远程仓库 1、初始化仓库 # 使用当前目录作为git仓库并初始化 git init # 使用指定目录newRepo作为git仓库并初始化 git init newRepo 2、克隆仓库 # 下载一个项目及其整个代码历史到指定目录 git clone <仓库url> [指定目录] ...
git reset 通常用来把代码重置到过去的某个版本,有五种模式(--mixed、--soft、--hard、--merge),注意看注释有说明区别。 另外git reset 比较暴力,要慎用,比如现在提交五次了,然后使用这个命令重置到第一次,那么第二三四五次提交记录会全部没了的,找不回来的,这种情况记得新建个分支来执行这种操作就没事了,或者...
git init# 初始化一个普通的目录为 git local repogit init命令会创建一个.git隐藏子目录,这个目录包含初始化git仓库所有的核心文件。 此步仅仅是初始化,此时项目里的代码还没有被git跟踪,因此还需要git add对项目文件跟踪,然后git commit提交到localrepo。
3. 版本库 repositoty 下面说些我的理解:git reset 常用命令有三个分别是 soft, hard, mixed 1. git reset --sorf 移动HEAD到指定的 commi 节点,但保留 工作区和暂存区的内容,简单来说就是你的代码还在只是变成了未提交状态或未添加状态 2. git reset --hard ...
git reset [ –soft | –mixed | –hard] <commit> git reset <commit> 的意思就是 把HEAD移到<commit> 这是现在repo的情况 D在stage裡面, E在working裡 我习惯想像成这样红色就是还没进staging 绿色就是还没commit 这裡的repo是指local的 不是remote的 别忘了一个铁则 Working >= Staging >= Repo ...
如果你在repo仓库中修改了一些东西,但是不想上传并希望废弃这些修改,可以使用以下命令来撤销这些修改: repo forall -c “git reset --hard” 该命令会遍历repo仓库下的所有git仓库,并将它们的工作区和暂存区恢复到HEAD的状态,即撤销所有修改。执行该命令前,请确保你已经保存了需要保留的修改,并做好了备份。