找不到git命令,也找不到ssh-agent


81

我今天在GitHub上,意识到在回购更新方面我落后了。我试图获取更新,但从一开始就失败了。当我启动Git Shell时(从Windows的GitHub)收到两条消息:

警告:找不到git命令。请创建一个别名或将其添加到您的PATH中。

警告:找不到ssh-agent。

当我尝试输入“ $ git fetch origin”时,出现以下错误消息:

术语“ $”不被视为cmdlet,函数,脚本文件或可运行程序的名称。检查名称的拼写,或者是否包含路径,请验证路径是否正确,然后重试。

我也尝试省略$符号,但这并没有改变任何东西。

我不知道这是怎么回事,上次我使用Shell(本月初)时,它没有执行此操作。我尝试将git.exe的路径添加到PATH环境变量中,但这没有用-似乎没有任何变化。这样之后我还没有重新启动计算机,这是问题吗?我也从未设置Git使用SSH。


似乎您没有安装git或它不在您的路径中。您打开了正确的外壳吗?在路径中查找并验证列表中是否存在git.exe目录。
2013年

“路径”是指PATH环境变量吗?我在上面添加了git.exe的路径,没有任何变化。我安装了适用于Windows的Github,给我的印象是它安装了我所需的一切?
海体

是的路径是PATH。真的很奇怪 尝试运行命令git --version
2013年

再次,它没有用。我遇到了同样的错误。
海体

尝试重新安装git或使用其他git程序。我将msysgit用于Windows,我很喜欢它。
2013年

Answers:


158

听起来您最近更新了GitHub应用程序,而Git Shell现在已损坏。

精简版

要解决这个问题

  • 关闭Git Shell
  • 打开GitHub并进行一些后期安装。
  • 再次打开Git Shell,应该已修复。

长版

这只是发生在我身上,只是为了确保我跟随您,您才这样做

  • 打开Git外壳
  • 系统提示您更新GitHub
  • 更新后,Git Shell打开

现在它给出了错误

找不到git命令。请创建一个别名或将其添加到您的PATH中。

警告:找不到ssh-agent。

如果是这种情况,请执行此操作

  • 关闭Git Shell
  • 现在打开GitHub应用程序(不是Git Shell)。

这将说出类似的内容(不确定确切的版本)

GitHub正在提取git ..

让该过程完成,完成后,打开Git Shell并修复它。至少对我有用。


谢谢您,好又简单的解决方案!
laike9m 2013年

1
就像我在OP中所描述的,2013年12月5日刚发生在我身上,因此显然这个问题仍然没有得到解决。我们中的一些人主要使用外壳,因此可能需要一段时间才能发现这一点。您的过程解决了该问题。
卡尔,

您能否解释一下我如何更新GIT?我实际上没有使用过-它会自动更新吗?令人毛骨悚然的......
托马什Zato -恢复莫妮卡

太棒了 刚打开GitHub并得到GitHub的消息是提取git。。后来打开git shell,问题解决了。
manu 2014年

1
只需确认这在2016年8月17日仍然是可行的修复程序即可。问题是posh git的Powershell版本。
Polyducks

10

如果您不想重新安装GitHub或GitShell,或者甚至不使用该服务,都可以自己修复。

基本上,您只需要将git.exe的目录路径添加到Windows中的PATH环境变量中即可。

对我来说,我必须添加路径“ C:\ Program Files(x86)\ Git \ bin”。或者当然,您可能已将Git安装在其他目录中,所以您需要找出放置它的位置。

可以在这里找到执行所有这些操作的说明:http : //thepracticalsysadmin.com/setting-up-git-in-windows/


7

系统>高级系统设置>高级选项卡>环境变量(在底部)。

在“系统变量”(下半框,滚动到该Path部分并进行编辑。假设您的git install是默认位置,请将以下内容添加到当前路径的末尾:

;C:\Program Files (x86)\Git\cmd;

做完了


6

我通过打开Github destop应用程序解决了我的问题,单击设置->选项我的默认外壳选择是PowerShell(突然停止工作),我选择了Git Bash保存了它,然后打开设置->选项,然后再次选择PowerShell。接下来,我再次打开GitShell,是的!它又开始工作了


这是可行的,但只有在我先进行“设置”->“在git shell中打开”之后,该方法才起作用。直到那时,我才从开始菜单'git shell'快捷方式获得此功能。
卢西亚诺

5

TLDR;

使用添加用户%path%变量%localappdata%\GitHub\PORTAB~1\bin

长版:

我无法得到Kirk来解决与Github一起工作的问题。

您要查找的文件是git.exe,Windows GitHub GUI会将其自身安装到本地用户应用程序目录,这使得查找它非常困难,例如我的 C:\Users\andy_000\AppData\Local\GitHub\PortableGit_ed44d00daa128db527396557813e7b68709ed0e2\bin\git.exe

该目录必须位于Windows环境路径中,以便git.exe仅通过git在命令窗口中键入即可找到。

我发现最好的解决方案是打开系统环境变量(系统->高级->环境变量),然后添加一个新的用户变量(顶部框,而不是底部,它是系统变量),Path并设置其值到%localappdata%\GitHub\PORTAB~1\bin

%path%就像示例中一样,这意味着系统变量具有指向github bin目录的完整用户配置文件路径。

尝试直接追加%appdata%%userprofile%引用系统%path%无效,因为设置系统变量时这些变量不可用,因此上述解决方案设置了一个用户%path%变量,该用户变量允许调用%localappdata%etc,并自动追加到系统上%path%,产生理想的效果。


4

遵循简单的步骤:

  1. 打开 gitshell更新,然后将其关闭。
  2. 打开githubgitshell将文件解压汽车(平均更新也)。
  3. 再次打开gitshell

您将看到错误将结束。希望这也会对您有帮助。


2

我在Windows7上安装了最新的github程序时遇到了这个问题。我什至禁用了我的防病毒软件的所有功能:)

我的解决方案是以管理员程序powershell ise(从菜单)打开并运行以下命令:

Set-ExecutionPolicy Unrestricted

您将看到有问题的对话框,我单击了是。然后我关闭了所有窗口并重新运行了github shell,没有任何问题。


0

我的简单解决方案(适用于GitHub桌面用户):

  1. 创建一个批处理文件git.bat

@回声关闭

%LocalAppData%\ GitHub \ Portab〜1 \ cmd \ git.exe%*

  1. 将其移至C:\Windows\文件夹。

而已!!你完成了!!

注意:您也可以使用git.bat而不是git.exe直接使用。。它将对要求您明确指向git可执行文件的软件(例如Android Studio)很有用。


-1

另一个选择是更改默认外壳。

转到工具->选项,然后将默认外壳从“ PowerShell”更改为“ Git Bash”或其他。


1
这确实有效。对我而言,我从PowerShell更改为Git Bash,然后将其更改回PowerShell。
懈怠者
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.