Stellen Sie die Verbindung zu einer versehentlich gestoppten VI-Sitzung wieder her (Git-Commit).

Stellen Sie die Verbindung zu einer versehentlich gestoppten VI-Sitzung wieder her (Git-Commit).

Unter Cygwin habe ich versehentlich gedrückt, Ctrl+Zwährend ich in war . Ich habe eine Nachricht vimbearbeitet .git commit

Dies führte zu

$ git commit -a

[1]+  Stopped                 git commit -a

Ich denke, die VI-Sitzung ist noch aktiv:

$ ps -ef | grep vi
myname   37252   15784 pty0     16:54:26 /usr/bin/vi

Wie kann ich die Verbindung zur viSitzung wiederherstellen und die Arbeit fortsetzen?

Antwort1

So habe ich es gemacht. Wenn es einen einfacheren Weg gibt, können Sie gerne eine weitere Antwort posten.

$ git commit
fatal: Unable to create '/cygdrive/c/projectDir/.git/index.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.


$ rm /cygdrive/c/Clients/Gulden/dev/Watch_Firmware/.git/index.lock

$ git commit

E325: ATTENTION
Found a swap file by the name "/cygdrive/c/projectDir/.git/.COMMIT_EDITMSG.swp"
          owned by: ...
         file name: /cygdrive/c/projectDir/.git/COMMIT_EDITMSG
          modified: YES
         user name: ...
        process ID: 37252 (still running)
While opening file "/cygdrive/c/projectDir/.git/COMMIT_EDITMSG"
             dated: Wed Feb  1 17:11:22 2017
      NEWER than swap file!

(1) Another program may be editing the same file.  If this is the case,
    be careful not to end up with two different instances of the same
    file when making changes.  Quit, or continue with caution.
(2) An edit session for this file crashed.
    If this is the case, use ":recover" or "vim -r /cygdrive/c/projectDir/.git/COMMIT_EDITMSG"
    to recover the changes (see ":help recovery").
    If you did this already, delete the swap file "/cygdrive/c/projectDir/.git/.COMMIT_EDITMSG.swp"
        to avoid this message.
    "/cygdrive/c/projectDir/.git/COMMIT_EDITMSG" 16 lines, 547 characters
    Press ENTER or type command to continue

Führen Sie dies :recoverin aus vim. Vervollständigen und speichern Sie die Nachricht. Löschen Sie dann die alte zwischengespeicherte Teilnachricht:

 $ rm /cygdrive/c/projectDir/.git/.COMMIT_EDITMSG.swp

verwandte Informationen