如何从当前状态恢复为在某个提交时创建的快照?
如果我这样做git log,那么我得到以下输出:
$ git log
commit a867b4af366350be2e7c21b8de9cc6504678a61b`
Author: Me <me@me.com>
Date: Thu Nov 4 18:59:41 2010 -0400
blah blah blah...
commit 25eee4caef46ae64aa08e8ab3f988bc917ee1ce4
Author: Me <me@me.com>
Date: Thu Nov 4 05:13:39 2010 -0400
more blah blah blah...
commit 0766c053c0ea2035e90f504928f8df3c9363b8bd
Author: Me <me@me.com>
Date: Thu Nov 4 00:55:06 2010 -0400
And yet more blah blah...
commit 0d1d7fc32e5a947fbd92ee598033d85bfc445a50
Author: Me <me@me.com>
Date: Wed Nov 3 23:56:08 2010 -0400
Yep, more blah blah.
Run Code Online (Sandbox Code Playgroud)
如何从11月3日恢复提交,即提交0d1d7fc?
在我的一个开发分支中,我对我的代码库进行了一些更改.在我能够完成我正在处理的功能之前,我不得不将当前分支切换到master来演示一些功能.但只是使用"git checkout master"保留了我在开发分支中所做的更改,从而破坏了master中的一些功能.所以我所做的是使用提交消息"临时提交"在我的开发分支上提交更改,然后为演示提供checkout master.
现在我已完成演示并重新开始在我的开发分支上工作,我想删除我所做的"临时提交",同时仍然保留我所做的更改.那可能吗?
我不清楚如何git revert工作.例如,我想在头部后面恢复提交六次提交,恢复中间提交之间的所有更改.
说它的SHA哈希是56e05fced214c44a37759efa2dfc25a65d8ae98d.那我为什么不能做以下事情:
git revert 56e05fced214c44a37759efa2dfc25a65d8ae98d
Run Code Online (Sandbox Code Playgroud) 我正在使用Git 1.7.4.1.我想从存储库中获取最新版本的代码,但我收到错误...
$ git pull
….
M selenium/ant/build.properties
….
M selenium/scripts/linux/get_latest_updates.sh
M selenium/scripts/windows/start-selenium.bat
Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'.
Run Code Online (Sandbox Code Playgroud)
我删除了该工具抱怨的文件的本地副本,但我仍然得到错误.如何查看远程仓库的最新版本? - 戴夫
请帮助让头指向git中的主人

我试过了
git rebase HEAD master
Run Code Online (Sandbox Code Playgroud)
和
git checkout master
Run Code Online (Sandbox Code Playgroud)
没有任何帮助.
更新:奇怪我试过:
git symbolic-ref HEAD
refs/heads/master
Run Code Online (Sandbox Code Playgroud)
然后
git rev-parse refs/heads/master
fc550e5ff2fe49d64ee1d8bf0da09b2b24bf2cd7
Run Code Online (Sandbox Code Playgroud)
然后我在以下命令后发出奇怪的警告
git rev-parse HEAD
warning: refname 'HEAD' is ambiguous.
fc550e5ff2fe49d64ee1d8bf0da09b2b24bf2cd7
Run Code Online (Sandbox Code Playgroud)
新更新:遥控器中有HEAD分支 - >原点.删除后一切都还可以.我不再有那个警告了.
在当地主分公司工作:
git commit -m "Lots of important commits"
git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)
如何检索由于git重置(从远程)丢失的提交?
编辑:请注意,这不是关于检索未提交的更改.
首先,我合并某物,然后发生冲突,所以我git merge --abort,但失败了,我必须先做git status,然后git merge --abort成功。
$ git merge features/test
Auto-merging src/cmd.c
CONFLICT (content): Merge conflict in src/main.c
Auto-merging src/client.c
Automatic merge failed; fix conflicts and then commit the result.
$ git merge --abort
error: Entry 'src/option.h' not uptodate. Cannot merge.
fatal: Could not reset index file to revision 'HEAD'.
$ git merge --abort
error: Entry 'src/option.h' not uptodate. Cannot merge.
fatal: Could not reset index file to revision 'HEAD'.
$ git status
# …Run Code Online (Sandbox Code Playgroud) 我正在尝试检查存储库的历史记录。我停在要将存储库恢复为特定提交的位置。我搜索了,我做到了
git reset --hard 12345
Run Code Online (Sandbox Code Playgroud)
我收到消息HEAD现在位于12345。我打开了该文件夹以查看我想查看的文件,但是它没有改变!
我想回到2009年首次创建该文件时。但是,该文件为新版本(2010年对其进行了编辑)。
我检查了工作目录,但那里什么也没有。我也跑了
git clean -f -d
Run Code Online (Sandbox Code Playgroud)
但什么都没有改变。
我不知道该怎么办。我想回到过去,看看文件的样子,但是我想回到整个存储库。
git ×11
git-reset ×4
branch ×1
git-branch ×1
git-checkout ×1
git-fetch ×1
git-merge ×1
git-pull ×1
git-revert ×1
head ×1
master ×1
undo ×1