簡體   English   中英

如何自定義msysgit的shell擴展的“此處Git Bash”命令所使用的終端?

[英]How to customize which terminal is used by the “Git Bash Here” command of msysgit's shell extension?

默認的cmd.exe很糟糕,我想使用“ Console”外殼。

用於啟動該cmd.exe的注冊表項為:

HKEY_CLASSES_ROOT\Directory\shell\git_shell\command

它包含(在我的Windows7安裝上):

"C:\Windows\SysWOW64\cmd.exe" /c "pushd "%1" && "C:\Prog\Git\1.6.5.1\bin\sh.exe" --login -i"

因此,您可以通過所需的任何其他控制台更改該條目。

我正在使用Git-1.7.6-preview20110708

您可以編輯位於C:\\ Program Files \\ Git中的Git Bash.vbs文件:

這是我完整的Git Bash.vbs文件

Option Explicit

Dim shell : Set shell = CreateObject("WScript.Shell")
Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")
Dim gitdir : gitdir = Left(WScript.ScriptFullName,InStrRev(WScript.ScriptFullName,"\"))
Dim bash : bash = fso.BuildPath(gitdir, "bin\sh.exe")
Dim temp : temp = fso.GetSpecialFolder(2) ' Temporary folder
Dim linkfile : linkfile = fso.BuildPath(temp, fso.GetTempName() & ".lnk")

Dim link : Set link = shell.CreateShortCut(linkfile)
link.TargetPath = bash
link.Arguments = "--login -i"
link.WindowStyle = 1
If WScript.Arguments.Length > 0 Then link.WorkingDirectory = WScript.Arguments(0)
link.Save

Dim app : Set app = CreateObject("Shell.Application")
If WScript.Arguments.Length=1 Then
    app.ShellExecute "C:\Program Files\Console2\Console.exe", " -t ""Git Bash"" -d """ & WScript.Arguments(0) & """"
Else
    app.ShellExecute "C:\Program Files\Console2\Console.exe", " -t ""Git Bash"""
End If

很遺憾地說,如果您正在使用git-cheetah ,目前看來這是不可能的。 我在尋找答案時發現了這個問題,所以我想將研究結果放在這里。

git-cheetah查找注冊表項HKEY_CURRENT_USER\\Software\\Git-Cheetah\\PathToMsys然后從該路徑執行sh

如果要使用ConEmu作為終端,則無需更改注冊表。 您可以按照此處所述從ConEmu中進行全部配置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM