撤销

git reset --hard commit

一世执手 提交于 2020-04-10 22:04:14
1、你的head已经跑到 origin/master 前面了,想回到和远程库版本一致 Setting your branch to exactly match the remote branch can be done in two steps: git fetch origin git reset --hard origin/master ##将会保持到和远程库中版本一致 注意该命令需要提前保存copy 出来 所有修改之前的文件,否则之前保存的文件都将不存在. 如果因为某些原因你发现自己处在一个混乱的状态中然后只是想要重来一次,也可以运行 git reset --hard HEAD 回到之前的状态或其他你想要恢复的状态。 请牢记这会将清除工作目录中的所有内容,所以确保你不需要保存这里的任意改动。 2、另外如果你想让自己回到某一个commit 也可以使用git rest --hard if your want drop any change from the head and not commit the change,you can use : git reset --hard head ##remember every changes will not saved Undoing a commit is a little scary if you don't know how

【GIT-2】GIT 的基础教程 工作区暂存区,修改,撤销,删除 远程仓库

大憨熊 提交于 2019-12-07 02:09:32
【转载请注明出处! http://my.oschina.net/u/2337744/ 】 ▓▏工作区和暂存区▕▓ : 工作区( Working Directory )指在电脑里可以看到的目录,比如 learngit 文件夹就是一个工作区; 版本库( Repository )指位于工作区中的一个隐藏目录 .git ,它不属于工作区,而是 Git 的版本库。 暂存区( index )指位于版本库中的 index 文件,其次,新建一个版本库 Git 会为我们自动创建第一个分支 master 和指向 master 的一个指针 HEAD 。 我们把文件往 Git 版本库里添加的时候,是分两步执行的: 第一步:用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步:用 git commit 提交更改,实际上就是把暂存区的所有内容提交到当前分支。 因为我们创建 Git 版本库时, Git 自动为我们创建了唯一一个 master 分支,所以,现在, git commit 就是往 master 分支上提交更改。 你可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。 现在,我们再练习一遍,先对 readme.txt 做个修改,比如加上一行内容;然后,在工作区新增一个 LICENSE 文本文件(内容随便写)。 先用 git status

如何在 Git 里撤销(几乎)任何操作

大憨熊 提交于 2019-11-30 23:17:41
任何版本控制系统的一个最有的用特性就是“撤销 (undo)”你的错误操作的能力。在 Git 里,“撤销” 蕴含了不少略有差别的功能。 当你进行一次新的提交的时候,Git 会保存你代码库在那个特定时间点的快照;之后,你可以利用 Git 返回到你的项目的一个早期版本。 在本篇博文里,我会讲解某些你需要“撤销”已做出的修改的常见场景,以及利用 Git 进行这些操作的最佳方法。 撤销一个“已公开”的改变 场景: 你已经执行了 git push , 把你的修改发送到了 GitHub,现在你意识到这些 commit 的其中一个是有问题的,你需要撤销那一个 commit. 方法: git revert <SHA> 原理: git revert 会产生一个新的 commit,它和指定 SHA 对应的 commit 是相反的(或者说是反转的)。如果原先的 commit 是“物质”,新的 commit 就是“反物质” — 任何从原先的 commit 里删除的内容会在新的 commit 里被加回去,任何在原先的 commit 里加入的内容会在新的 commit 里被删除。 这是 Git 最安全、最基本的撤销场景,因为它并不会 改变 历史 — 所以你现在可以 git push 新的“反转” commit 来抵消你错误提交的 commit。 修正最后一个 commit 消息 场景: 你在最后一条

VIM使用系列:窗口控制与操作控制

荒凉一梦 提交于 2019-11-27 04:57:50
前面介绍完准备工作和配置文件,接下来将主要介绍使用VIM进行编辑开发过程的一些控制操作和命令技巧等,主要是我在项目开发过程中遇到并使用的一下操作技巧,不进行深入的原理探讨和详解。本文主要说说vim中的窗口控制操作和操作的重复、撤销、恢复控制两块。 多窗口控制操作 vim充分地支持多窗口的编辑、管理操作,这对于多文件的编辑、对比浏览等都非常有利。vim中窗口就是文件的一个视图,同一个文件可以有多个窗口(视图),对于窗口的详细介绍可以查看帮助文档,通过vim命令: <!-- lang: shell --> :help window 这里主要是简要地介绍一下在多窗口控制时会用到的常用操作与命令,包括:在窗口间的移动,窗口的关闭,窗口的大小调整等。窗口操作的前缀组合键为:Ctrl-w 1. 窗口间的移动,查看帮助::help window-moving 窗口操作组合键加上vim中的方向移动控制按键就可以实现。如把光标移动到下一个窗口:Ctrl-w j。 2. 窗口的关闭,查看帮助: :help window-exit 关闭当前窗口,有两种方式,第一:在vim命令行输入:q来关闭;第二:组合键加上q,即Ctrl-w q。关闭所有窗口,在vim命令行输入:qa来实现;保留当前窗口,关闭剩下的所有窗口,也有两种方式,第一:在vim命令行输入:only,第二:组合键加上o,即Ctrl-w o