如何使用逃犯提交当前在Vim中显示的文件?

时间:2014-12-07 07:05:35

标签: git vim vim-fugitive

我正在编辑分别打开三个窗口的文件。我想将它们提交到存储库中。有没有命令可以做到这一点?

2 个答案:

答案 0 :(得分:37)

有几种方法可以完成此任务。我将概述使用:Gstatus的最具互动性的方法。

  • 通过:Gstatus
  • 打开状态窗口
  • 通过<c-n> / <c-p>
  • 在文件之间移动
  • 通过-
  • 暂存/取消暂存文件
  • 在状态窗口
  • 中开始通过cc提交
  • 创建提交消息并保存并关闭窗口。 (我更喜欢:x
  • 您还可以使用zjzk在各个部分之间移动
  • 在某个部分使用-将暂存/取消暂存该部分中的所有文件

有关:Gstatus的更多帮助,请在:h :Gstatus缓冲区中查看g?:Gstatus

可以使用:Gwrite:windo跳过:Gstatus窗口,以加快速度。

:windo Gw
:Gcommit

您还可以使用-m标志跳过整个提交窗口。例如:Gcommit -m "A short message"

我推荐关于逃犯的Vimcasts个视频:The Fugitive Series - a retrospective

要了解详情,请参阅:

:h fugitive
:h :Gstatus
:h :Gw
:h :Gcommit
:h :windo
:h :x

答案 1 :(得分:2)

没有逃犯:

:windo !git add %
:!git commit -m "My message goes here"

最后一个命令可以替换为:

:!git commit --interactive