在git中取消暂存新文件部分的最快方法是什么?

Tob*_*ias 21 git unstage

当我想将一个新文件拆分成几个提交时,我可以git add -N <file>然后使用交互式分段线git gui.但是,当我在分段时犯了错误时,git gui不会让我取消单独的行,因为它是一个新文件(这对我来说似乎是个错误).当然,我总是可以取消整个文件并重新开始,但我想知道是否有更有效的方法.

我在用git 1.7.5.


为了澄清,这个问题特定于新的 aka 未跟踪文件!

Mik*_*ler 7

从命令行类型:

git reset -p
Run Code Online (Sandbox Code Playgroud)

这将允许您使用标准命令行界面来管理帅哥,从索引中选择性地释放帅哥.这是相反的git add -p.

UPDATE

好吧,当文件是新文件时,你似乎无法选择性地分阶段.鉴于git-gui和标准的git hunk编辑器都不允许这样做,它可能是不可能的.


Mic*_*ild 1

使用fugitive你可以轻松做到这一点。只需调用该:Gdiff命令,然后暂存和取消暂存您想要的任何内容。您甚至可以直接编辑索引文件。当然,这个解决方案要求您相当满意vim并且vimdiff......