Konsol 2'de Git Bash mi?


47

MSysGit, seçili klasörde Git Bash bilgi istemi açan bir içerik menüsü yükler; Ancak, bu bir cmd.exe penceresi açar ve bunun yerine Konsol 2'de açılmasını istiyorum .

Bunun işe yaraması için ne gibi değişiklikler yapmam gerekiyor?

Not, bu soruyu gördüm , ancak cevap modası geçmiş - MSysGit şimdi bash istemini çağırmak için bir vba betiği kullanıyor. Üstelik, Konsolide2 ile işlerin nasıl yürüdüğünü açıkça ifade etmiyor.

Güncelleme: Konsol için oldukça mükemmel bir halefi olan ConEmu ile aynı şeyi yapmak ilginizi çekebilir . Buraya bakın: Git Bash İşte ConEmu'da

Yanıtlar:


44

İşte yaptığım şey (neredeyse kesinlikle değişiklik gösteren yolların):

  1. Konsol'da aşağıdaki değerlerle yeni bir sekme oluşturun:
    • Başlık: Git Bash
    • Simgesi: C:\Program Files\Git\etc\git.ico
    • Kabuk "C:\Program Files\Git\bin\sh.exe" --login -i
    • Başlangıç ​​dir: %HOMEDRIVE%%HOMEPATH%
  2. Veri değeri ile HKEY_CLASSES_ROOT\Directory\shell\çağrılan yeni bir anahtar oluşturun git_shell2.Git Console Here
  3. Veri değeri ile HKEY_CLASSES_ROOT\Directory\shell\git_shell2\çağrılan yeni bir anahtar oluşturun command."C:\Users\charlesr\My Dropbox\Software\Console2\Console.exe" -t "Git Bash" -d "%1"

Bu hile yapar.

Yukarıdaki 2. ve 3. adımları yapmak yerine, aşağıdakini bir .reg dosyasına kopyalayın (önce kendi yapılandırmanıza uygun yolları değiştirin), sonra kayıt defterine alın.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\git_shell2]
@="Git Console Here"

[HKEY_CLASSES_ROOT\Directory\shell\git_shell2\command]
@="\"C:\\Users\\charlesr\\My Dropbox\\Software\\Console2\\Console.exe\" -t \"Git Bash\" -d \"%1\""

Bunu daha sonra bulan başkalarına not edin, Console2'nin 32-bit sürümünü kullandığınızdan emin olun, aksi halde başarısız olur.
kodlayıcı

En son msysgit'te simgenin şimdi C: \ msysgit \ share \ resources \ git.ico
Kevin Berridge

1
Teşekkürler Charles, ama neden 2. ve 3. adımları çalıştırın? Sadece 1. adımı yaparken işe yarar, neden depo ayarlarını değiştirme gereğinden emin değilsiniz?
Mark Kadlec

2
Çok temiz. (Değil bir simgeyi, beyaz kısmı) bir klasörün "arka" tıklayarak zaman da bağlam menüsünü ekleyebilirsiniz Not gist.github.com/4048138
OZH

Bir süredir bu kurulumu kullanıyorum, ancak .batbetikleri yürütememe konusundaki talihsiz bir sınırlama var gibi görünüyor (farklı bir sekmeye geçmeden, düz çalışıyor Cmd.exe). Bu konuda herhangi bir fikri olan var mı?
Eoin

7

Vba betiği, aynı dizindeki Git Bash kısayolunu başlattı; Console2'nin çalıştırılabilirine işaret etmek için bu kısayolu değiştirin ve Console2'yi kabuk olarak MSysGit'in sh'ını kullanacak şekilde yapılandırın.


GÜNCELLENMİŞ

Yeni bir bilgisayarda tekrar yapmam gerektiği için daha fazla ayrıntıya girmek:

  • Konsol2'yi Yapılandırma

    1. "git" adlı yeni bir sekme ekledi
    2. simgesini C:\Program Files (x86)\Git\etc\git.ico
    3. kabuğu ayarla C:\Program Files (x86)\Git\bin\sh.exe --login -i
  • Git Bash'in kestirme yolu

    1. kısayol hedefini değiştirin C:\Tools\Console2\Console.exe -t git -d .(Konsol 2'nizin bulunduğu yer de)
    2. Console2 başlatırken yeni "Git Bash İşte" nin tadını çıkarın!

İşin püf noktası "-d" dir. Konsol 2'ye geçirilen seçenek: Git Bash.vbskomut dosyası, kısayolu açmadan önce geçerli dizini farenin işaret ettiği noktaya değiştirir.

Umarım yardımcı olur.


5

Kimsenin MinGW Bash'i kullanmak istemesi durumunda tökezlemesi durumunda bunun için bir çözüm buldum.

  1. Konsol 2, Düzenle, Ayarlar, Sekmeler, Ekle
  2. Başlık = Bash
  3. Kabuk = C:\MinGW\msys\1.0\bin\sh.exe -l
  4. Kayıt defterini düzenle

    ni hklm:software/classes/directory/shell/bash/command `
      -f -va 'c:/Console2/Console.exe -t Bash -d %v'
    
  5. ~/.profileAşağıdakilerle oluşturun :

    cd -
    

cd Man Sayfa

Bu 64-bit ve 32-bit Konsol ile çalışır , hangi kodlayıcı hakkında ne olduğundan emin değil .


Konsolun bir hata vermesine neden olan bu komutla ilgili birkaç sorun var. İlk olarak, HKCR\...\commandtırnak işaretleri içine alınmamalıdır. Sonra, yeni kayıt defteri girdisi için verileri belirtmek üzere parametreyi \-diletmek istediğinizi düşünüyorum /d. Ayrıca, veri değeri etrafında çift tırnak işareti gerekir ve -tparametre Console.exe'nin hiç açmamasına neden olur, bu nedenle hariç tut. Bu gibi görünmeli:reg add HKCR\Directory\shell\Bash\command /d "C:\Console2\Console.exe -d \"%V\""
David Kennedy

cmd.exeBash, karakter dizileri için tek ve çift tırnak kullanımına izin verdiği için, hala kullandığınız yorumlarınız açıktır . Bash'e yükseltmeyi düşünmelisin.
Steven Penny

0

'Bash' adında bir Konsol2 sekmeniz olduğunu varsayalım:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\console2_bash]
@="Bash here (Console2)"
"NoWorkingDirectory"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\console2_bash\command]
@="\"C:\\Program Files (x86)\\Console2\\Console.exe\" -t Bash -d \"%V\"\\"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.