Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何中止正在还原的git提交序列_Git_Cygwin - Fatal编程技术网

如何中止正在还原的git提交序列

如何中止正在还原的git提交序列,git,cygwin,Git,Cygwin,我在相当长的提交序列上启动了一个git revert,不知道-no edit选项。因此,每次恢复的提交都会弹出编辑器。退出编辑器而不保存“中止”还原,但仅针对要还原的特定提交—因此,一旦退出git,就会弹出另一个编辑窗口,用于还原序列中的下一次提交 上的手册页显示了一个选项--abort,该选项符合我的要求,但我尝试使用它(在另一个窗口中),并获得使用信息: $ git revert --abort live-20121111..V2.1-master usage: git revert [op

我在相当长的提交序列上启动了一个
git revert
,不知道
-no edit
选项。因此,每次恢复的提交都会弹出编辑器。退出编辑器而不保存“中止”还原,但仅针对要还原的特定提交—因此,一旦退出git,就会弹出另一个编辑窗口,用于还原序列中的下一次提交

上的手册页显示了一个选项
--abort
,该选项符合我的要求,但我尝试使用它(在另一个窗口中),并获得使用信息:

$ git revert --abort live-20121111..V2.1-master
usage: git revert [options] <commit-ish>
$git revert--abort-live-20121111..V2.1-master
用法:git revert[选项]
我使用的是
Cygwin git
版本1.7.5.1,因此推测
--abort
选项是在较新的版本中引入的。如何使用
--no edit
选项干净地停止整个序列以重新开始?我不想退出数以百计的编辑器会话。

手册
revert--abort
。这将产生停止循环的效果,尽管会出现错误,抱怨分支的refs/heads不在退出编辑器时预期的提交位置

执行git日志(检查git还原已生成的提交),并选择要重置到的提交的SHA1

也就是说,可以避免在Cygwin中使用git,使用最新的(4天前)2.4.5。

您可以在任何地方提取,并附带一个
git bash.exe

@sootsnoot我想说的是,如果您使用的是git 2.4.5,您将可以访问
git revert
--no edit
选项。不需要Cygwin。@因此,重置--hard只需整体中止当前的
git revert
。但是要重新启动git还原,我建议使用git 2.5.4(适用于Windows)哦,好的。事实上,1.7.5.1确实有--no edit选项,我只是不知道它(或者需要它,因为我以前从未做过恢复)。正如我在原始问题中所说的,我只想停止每次提交被还原时不断弹出编辑器的循环,这样我就可以重新开始--不进行编辑。我知道我要开始的提交,知道如何使用重置——很难做到这一点。@sootsnoot Cygwin很好。使用Git的Cygwin不是很好(速度慢而且过时)。您还有一个32位版本的Git for Windows()。使用Git发行版附带的bash并不会阻止您将Cygwin用于其他所有功能。我个人不使用Cygwin:我有一个VirtualBox(在Xp或Win7上),我在上面运行完整的Ubuntu或Mint发行版,或者运行用于QuickLinux容器的boot2docker。