【问题标题】:How do I run msysgit in cmder?如何在cmder中运行msysgit?
【发布时间】:2014-09-26 06:47:10
【问题描述】:

当我不小心退出时,我在 cmder 中使用了 msysgit 和 git-bash。
现在我似乎无法弄清楚如何进入我以前拥有的 unix 环境。

Git bash 未被识别为命令。
我所看到的只是显示C:/User/.. 而不是$~User 的典型命令窗口提示。

你将如何恢复 git bash 会话?

【问题讨论】:

    标签: git msysgit git-bash


    【解决方案1】:

    一个简单的方法是在 Cmder 中定义一个自定义的“bash”任务,然后将其配置为默认使用这个任务。

    • 安装cmder_mini(msysgit已经安装,不需要完整版)
    • 在Cmder中,打开设置:Win + Alt + P
    • Startup > Tasks 下,添加一个名为 {bash} 的任务,其设置如下:
      • 任务参数 - 设置图标:
        • /icon "%CMDER_ROOT%\cmder.exe"(用于 Cmder 图标)或 /icon "C:\Program Files (x86)\Git\etc\git.ico"(用于 Git 图标)
      • 命令 - 打开 Git 的 bash shell:
        • "C:\Program Files (x86)\Git\bin\sh.exe" -l -new_console:d:%USERPROFILE%
    • Startup 下,将启动选项设置为 Specified name task --> {bash}

    ...这会将 Git bash 设置为 Cmder 中的默认控制台。

    注意。以上显然假设 Git 安装在“C:\Program Files (x86)\Git” - 如果不是这种情况,您需要更改路径以指向安装 Git 的位置。

    【讨论】:

    • 我知道只发谢谢是不好的,但我很高兴你发了这个!
    • 张贴“不客气”可能同样糟糕,但不客气!很高兴它有帮助。
    【解决方案2】:

    您可以键入 msysgit intallation (2014, Git 1.9.z) 的完整路径来启动 bash 会话。

    例如:

    • "c:\prgs\git\PortableGit-1.9.0-preview20140217\Git Bash.vbs": 将打开一个新窗口
    • "c:\prgs\git\PortableGit-1.9.0-preview20140217\git-bash.bat": 将在当前 shell 中打开一个 bash 会话。

    这两个脚本不是<msysgit/bin> 文件夹的一部分,在%PATH% 中也找不到。

    正如下面 cmets 中的 David Graysonpred 所评论的,使用 Git-1.9.5-preview20141217.exe 确实会导致安装(在 C:\Program 文件中)没有有 git-bash。 bat,它依赖于“Git Bash”快捷方式调用C:\Git\bin\sh.exe --login -i

    不要使用该设置。使用更简单、更完整的包PortableGit-1.9.5-preview20141217.7z,您可以在任何地方解压缩并添加到 PATH。


    注意:使用新的Git for Windows releases (2015, Git 2.y.z),那就是:

    • c:\prgs\git\PortableGit-2.3.5.8-dev-preview-64-bit\git-bash.exe”:将在当前 shell 中打开一个 bash 会话。

    【讨论】:

    • @Shroy 太棒了!欢迎使用 Stack Overflow。
    • 另外注意cmder自带msysgit,所以可以使用cmder的root\vendor\msysgit\git-bash.bat
    • 嗯,我有 git 1.9.5-preview20141217 并且批处理文件不存在。 vbs 文件在那里,但是从 cmder 运行它是没有用的,因为它会打开一个新的 Windows,它是一个普通的 shell,而不是 cmder。
    • @DavidGrayson 我也有 PortableGit-1.9.0-preview20140217(从其存档版本 github.com/msysgit/msysgit/releases/download/… 解压缩),git-bash.bat 确实存在。使用它很重要,因为它会为您设置%HOME%,而不是直接调用sh.exe(甚至不是bash.exe
    • 我在 Windows 7 上不断收到此错误。'c:\Program' is not recognized as an internal or external command, operable program or batch file. 而且 Git 状态不显示。
    【解决方案3】:

    在cmder中运行以下命令:

    sh -l
    

    这假定 Git 的“sh”在您的 PATH 上。但是如果你以不同方式安装了 git 并且没有找到 sh,那么尝试输入它的完整路径,例如:

    "C:\Program Files (x86)\Git\bin\sh.exe" -l
    

    如果您想自动执行此操作,因此您不必显式运行 sh,然后进入 cmder/ConEmu 的设置并更改 {cmd} 任务以具有命令 sh -l 和参数 /dir "%HOME%"。那么cmder总是会默认启动Git Bash,而不是微软的cmd shell。

    【讨论】:

      猜你喜欢
      • 2015-08-11
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 2018-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-23
      相关资源
      最近更新 更多