TortoiseGit-git没有干净地退出(退出代码1)

时间:2014-03-04 07:50:38

标签: git tortoisegit

当我尝试使用Git clone创建存储库时,我收到了此消息。

git did not exit cleanly (exit code 1)

如何解决这个问题?

20 个答案:

答案 0 :(得分:12)

在git bash中尝试这两个命令:

1)git gc --force

2)git fetch -p

答案 1 :(得分:6)

根据我的经验,我经常会在本地更改文件时通过拉动操作来获取此文件,您需要先存储或移动文件,然后才能将其拉出。

答案 2 :(得分:4)

有时它会因某些操作的不完整而发生,例如" stash save"。它会在.git文件夹中创建一个index.lock文件,并导致此错误。你需要做的是进入.git文件夹并删除index.lock文件并重新启动你想要做的事情。

The .git Folder

The index.lock File

答案 3 :(得分:3)

  1. 右键单击>还原>全选
  2. 点击确定;
  3. 恢复过程完成后,PULL。
  4. 问题解决了!

答案 4 :(得分:3)

右键单击文件夹 - > TortiseGit - >推>选择“未知的变化” - “

答案 5 :(得分:2)

Right click -> TortoiseGit -> Settings -> Network
SSH client was pointing to C:\Program Files\TortoiseGit\bin\TortoisePlink.exe
Changed path to C:\Program Files (x86)\Git\bin\ssh.exe

答案 6 :(得分:2)

实际上,此错误消息只是说有问题但没有问题的规范。所以,就我而言,这是一个待处理的拉取请求。我将更改拖到我的仓库中,然后再次推动它并且工作正常。而且,如果tortoisegit上有错误,我更喜欢在控制台上做同样的事情。控制台提供了更多详细信息错误消息

答案 7 :(得分:1)

右键单击文件夹 - > TortiseGit - >清理.. - >单击确定

上述解决方案都不适合我,但是这个解决方案确实有效。

答案 8 :(得分:1)

我听说,其中一个原因是项目太大,所以增加后缓冲可以解决问题。 所以打开editSystemWideGitConfig,并在[http],postBuffer = 524288000下添加以下语句。 也许工作。

答案 9 :(得分:0)

只需检查您在远程和本地的分支名称,希望可能存在与大小写相关的不匹配。

答案 10 :(得分:0)

我删除了 repo,然后重新克隆了它。那么问题就解决了。执行此操作之前,请确保您未推送的文件已得到妥善备份。

答案 11 :(得分:0)

由于长路径问题,我也遇到了此错误消息。尝试输入此内容,这对我很有帮助。

git config --global core.longpaths true

答案 12 :(得分:0)

我已经遇到这种情况,在我的情况下,我同时使用了两个git id。因此它将做什么,它将更新凭据管理器中的凭据

Control Panel\User Accounts\Credential Manager

如图here

在Credential Manager中,您将在Generic凭证内找到git hub凭证,您必须在其中更新git凭证。

答案 13 :(得分:0)

首先登录git,然后在推之前进行拉。问题将得到解决

答案 14 :(得分:0)

我更改了电子邮件地址(工作电子邮件已更改)后,我的Git帐户开始出现问题。我尝试了一切可能的方法,包括卸载,重新安装,使用git帮助台在电话上花费时间等。

放弃并创建了一个新的电子邮件地址和新帐户,但是仍然不断收到“ 没有干净退出”消息。

我的解决方法是:卸载所有与git相关的东西,删除对所有git的引用,包括appdata下的草龟,删除程序文件和程序文件(x86)下的所有git文件夹,删除全部的Windows凭据(“控制面板”中的凭据管理器) git,重新启动,用新帐户重新安装。

答案 15 :(得分:0)

对于我的情况,我完成了3个步骤来构建成功。

  1. 还原所有本地更改(如果有的话)(或者保留一份副本,以备日后使用)

  2. 进行git清理,拉动并检查日志中是否存在错误

  3. 转到git bash选项,并且我在上面的茎中登录时遇到错误(我的情况) 由于“ 错误:无法锁定引用和分支详细信息”,因此在git bash中,我运行了以下命令 git update-ref -d'分支名称'

例如,如果错误是类似 **

  • 问题

**错误:无法锁定ref'refs / remotes / origin / EXMPLEISSUE / EXAMPLE-1011_DEMO_web_interface_DOES_NOT_GET_GIT_UPDATE':

然后我运行以下命令 git update-ref -d'refs / remotes / origin / EXMPLEISSUE / EXAMPLE-1011_DEMO_web_interface_DOES_NOT_GET_GIT_UPDATE'

我们必须确保通过成功执行git update-ref -d'Branch_name'来类似地解决日志中的所有错误,然后才能成功提取,最后我可以从git获得成功提取。

答案 16 :(得分:0)

对我而言,这是由于磁盘空间不足,在我释放本地驱动器上的一些磁盘空间后解决了这个问题。

答案 17 :(得分:0)

这只是因为您对远程存储库进行了更改,而这些更改未在本地存储库中提取。

简单地解决 1.从远程存储库拉到本地存储库。它不会在本地撤消任何更改。它只会更新本地存储库。 2.现在将更改推送到远程存储库。它会起作用

答案 18 :(得分:0)

升级Git后我遇到了同样的问题。结果我从32位切换到64位Git,我没有意识到。 TortoiseGit仍然在寻找" C:\ Program Files(x86)\ Git \ bin",它们并不存在。右键单击该文件夹,转到Tortoise Git>设置>常规并更新Git.exe路径。

答案 19 :(得分:0)

关注this guide我遇到了同样的问题。为了扩展埃里克摩尔的荒谬模糊的答案,

Right click > TortoiseGit > Settings > Network

" SSH"部分,点击浏览并找到你的TortoiseGit\bin\TortoisePlink.exe文件。就我而言,路径位于Programs而不是Program Files