Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.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提交-a';指挥部?_Git_Bash_Vim_Git Commit - Fatal编程技术网

如何处理来自';git提交-a';指挥部?

如何处理来自';git提交-a';指挥部?,git,bash,vim,git-commit,Git,Bash,Vim,Git Commit,我目前正在GitHub上工作,我正处于练习如何控制文件的初级阶段 以下是我目前的状态: 分支主机上的 未为提交而暂存的更改: (使用“git add…”更新将提交的内容) (使用“git签出--…”放弃工作目录中的更改) 修改:index.html 未向提交添加任何更改(使用“git add”和/或“git commit-a”) 现在我正试图使用git commit-a命令提交修改 但只要我键入git commit-a,bash shell就会显示如下内容: E325:注意 找到名为“~/De

我目前正在GitHub上工作,我正处于练习如何控制文件的初级阶段

以下是我目前的状态:

分支主机上的

未为提交而暂存的更改:
(使用“git add…”更新将提交的内容)
(使用“git签出--…”放弃工作目录中的更改)
修改:index.html
未向提交添加任何更改(使用“git add”和/或“git commit-a”)
现在我正试图使用
git commit-a
命令提交修改

但只要我键入git commit-a,bash shell就会显示如下内容:

E325:注意 找到名为“~/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp”的交换文件 所有者:choehyeong gyu日期:2017年3月12日22:31:25 文件名:~choehyeonggyu/Desktop/ComputerScience/GitHub/.git/COMMIT\u EDITMSG 修改:是的 用户名:choehyeong gyu主机名:choehyeong-Gyuimacbookpro.local 进程ID:6651 打开文件“/Users/choehyeonggyu/Desktop/ComputerScience/GitHub/.git/COMMIT_EDITMSG”时 日期:2017年3月12日太阳22:41:36 比交换文件更新! (1) 另一个程序可能正在编辑同一文件。如果是这样的话,, 小心不要以同一个问题的两个不同实例结束 在进行更改时创建文件。退出,或者谨慎地继续。 (2) 此文件的编辑会话崩溃。 如果是这种情况,请使用“:recover”或“vim-r/Users/choehyeong-gyu/Desktop/ComputerScience/GitHub/.git/COMMIT_EDITMSG” 要恢复更改(请参阅“:帮助恢复”)。 如果您已经这样做了,请删除交换文件“/Users/choehyeong-gyu/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp” 以避免此消息。 交换文件“~/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp”已存在! [O] 钢笔只读,(E)dit无论如何,(R)ecover,(D)elete it,(Q)uit,(A)bort: 我对此毫无准备,只是输入了“E”。然后,炮弹呼喊着

E325:注意 找到名为“~/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp”的交换文件 所有者:choehyeong gyu日期:2017年3月12日22:31:25 #请输入更改的提交消息。起跑线 #将忽略带有“#”的消息,空消息将中止提交。 #论分行行长 #要提交的更改: #修改:index.html # ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ “~/Desktop/ComputerScience/GitHub/.git/COMMIT_EDITMSG”7L,209C 现在什么都不起作用了,我不知道如何采取下一步。

这是Vim,不是Git 这不是Git的问题,而是由Vim编辑器引起的。它抱怨的文件称为“交换文件”

什么是交换文件? Vim为各种目的使用交换文件,这些文件遵循以下格式

{original_filename}.swp
因此,默认情况下,如果您正在编辑一个文件
COMMIT\u EDITMSG
,那么将创建一个名为
.COMMIT\u EDITMSG.swp
的交换文件。这本身是正常的。通常,当Vim退出时,它会清理这些文件

但是,如果Vim加载一个文件,并在尝试创建交换文件时发现该文件已经存在,它会向您发出此警告并询问如何继续。这是为了保护用户不受自己的影响-Vim假设在同一个文件上打开了两个编辑器,这可能导致一个编辑器覆盖另一个的更改,并丢失工作

有几种方法可以做到这一点

  • 您打开了多个编辑器来编辑同一个文件
  • 其他人也在编辑该文件
  • vim的前一个实例在编辑此文件时崩溃,并且在其自身之后没有清理交换文件
  • 提交消息是怎么回事? 加载到提交消息中的文本只是Vim抱怨的副作用。只需删除该文本并编写自己的提交消息

    如何解决这个问题 如果您合理地确定您或其他人没有在另一个会话中合法地编辑该文件,那么解决此问题的最简单方法是删除交换文件,这样应该可以解决问题

    rm-f~/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp
    
    这是Vim,不是Git 这不是Git的问题,而是由Vim编辑器引起的。它抱怨的文件称为“交换文件”

    什么是交换文件? Vim为各种目的使用交换文件,这些文件遵循以下格式

    {original_filename}.swp
    
    因此,默认情况下,如果您正在编辑一个文件
    COMMIT\u EDITMSG
    ,那么将创建一个名为
    .COMMIT\u EDITMSG.swp
    的交换文件。这本身是正常的。通常,当Vim退出时,它会清理这些文件

    但是,如果Vim加载一个文件,并在尝试创建交换文件时发现该文件已经存在,它会向您发出此警告并询问如何继续。这是为了保护用户不受自己的影响-Vim假设在同一个文件上打开了两个编辑器,这可能导致一个编辑器覆盖另一个的更改,并丢失工作

    有几种方法可以做到这一点

  • 您打开了多个编辑器来编辑同一个文件
  • 其他人也在编辑该文件
  • vim的前一个实例在编辑此文件时崩溃,并且在其自身之后没有清理交换文件
  • 提交消息是怎么回事? 加载到提交消息中的文本只是Vim抱怨的副作用。只需删除该文本并编写自己的提交消息

    如何解决这个问题 如果您合理地确定您或其他人没有在另一个会话中合法地编辑该文件,那么解决此问题的最简单方法是删除交换文件,这样应该可以解决问题

    rm-f~/Desktop/ComputerScience/GitHub/.git/.COMMIT\u EDITMSG.swp