我使用Ruby on rails语言,创建了一个名为user-micpost的分支。在这个分支中,我创建了文件,修改了文件,并完成了数据库迁移。
我在某个地方搞砸了,所以我想恢复它目前在GitHub上的代码,或者将代码返回到创建这个新分支之前的状态。
这样做是否足够:
CCD_ 1然后CCD_?
或者这只会删除分支而不会恢复更改?
我还没有提交,所以所有的更改都是IDE上的本地更改。(im使用AWS Cloud9 IDE(
由于您没有执行git add <file>
(所有更改都是IDE上的本地更改(,因此您的更改应该在未声明/未跟踪的文件下。如果运行git status
命令,则可以确认。
有3个选项可以撤消IDE上的本地更改。
- 放弃所有本地更改,但将其保存以备以后再次使用:
git stash
- 放弃对文件的所有本地更改(永久(:
git checkout -- <file>
- 永久放弃对所有文件的所有本地更改:
git reset --hard
最后一个选项是一个危险的命令,如果你不确定自己在做什么,你应该避免使用它,因为它会删除所有未提交的更改。然而,在你的情况下,这似乎是你想做的
有关详细信息:https://docs.gitlab.com/ee/topics/git/numerous_undo_possibilities_in_git/#undo-本地更改
由于您没有提交更改,您可以按照建议签出主分支并删除新分支。遗憾的是,您未经限制的更改仍将存在!由于它们一开始并没有被提交,所以它们只是停留在你的工作目录中。要清除它们,您必须使用git reset --hard HEAD
之类的命令重置整个工作目录。这将放弃所有更改并重置为当前分支的HEAD(即master
(。