2016-10-26 21 views
20

Çapraz platform uygulamam için de test komut dosyalarını Windows üzerinde de çalıştırabilmek için, MSYS2'yi yükledim ve test komut dosyalarına güvenilen paketleri yüklemek için pacman kullandım.msys/git ve git-for-windows/mingw-w64-x86_64-git arasındaki farklar nelerdir?

MSYS2, git bir bağlantı noktası (msys/git) sağladığından, Windows için Git'i de yüklememize gerek olmadığını düşünüyorum. Ancak MSYS2 deposunda sağlanan git sürümü ile Git for Windows tarafından sağlanan sürüm arasındaki farklar nelerdir?

şimdiye kadar bu farklılıkları fark:

FileNotFoundError: [WinError 3] The system cannot find the path specified: '/c/users/user/documents/project/.git\\..' 

: bir git klon gelen bir Python paketi modunda geliştirmek yüklü bir virtualenv üzerinde pip freeze çalıştırırken

  1. msys/git başarısız olur Windows için git-windows/mingw-w64-x86_64-git başarısız, bu nedenle yol işleme konusunda en azından bazı farklılıklar vardır. Windows için gitk ve git gui'nin çalışması kutudan çıkacaktır. GIT_GUI_LIB_DIR ortam değişkeni as described here'u ayarlamanıza gerek yoktur.

Windows için Git deposundan git, bu noktada en iyi deneyimi sunuyor.

P.S. Windows için Git'i MSYS2'de /etc/pacman.conf, above[mingw32], ve [msys] girişleri ekleyerek yükleyebilirsiniz. Ancak Windows için Git de dahil olmak üzere, Windows için Git SDK'sı yerine basically a special edition of MSYS2'u kurmak daha iyi bir fikir olabilir. Aksi halde, aşağıdaki prosedür (ve daha fazlası) ayrıca described here'dur. Bundan sonra

[git-for-windows] 
Server = https://dl.bintray.com/$repo/pacman/$arch 

[git-for-windows-mingw32] 
Server = https://dl.bintray.com/git-for-windows/pacman/i686 

(ve belki de bir pacman -Sy) kullanarak, Windows'un Git için Git yükleyebilirsiniz:

pacman -S mingw-w64-x86_64-git 

Ben MSYS2 içinde Windows'ın Git için Git yüklemek için hiçbir neden yoktur herhalde?

EDIT Windows için Git (un) yükleyicisi, C:\ProgramData\Git\config'un arkasında kaldı. Bu noktalar SSL sertifikaları için yanlış yere gider. Bunu düzeltmek için C:\ProgramData\Git\config'u kaldırabilirsiniz.

+0

Git ve IDE arasındaki etkileşimin yanlış gittiği QtCreator, ancak Windows için Git iyi çalıştı. Bu biraz zaman önceydi. – rubenvb

+0

O, güzel olurdu eğer cevap olabilir ayrıca detay pencereler için MSYS2 + Git ve Git arasındaki fark. Gördüğüm kadarıyla, MSYS2 + git'in avantajı, tüm MSYS2 ekosistemine (pacman dahil) sahip olmanız ve Windows için Git'in avantajı, kabuk uzantısı ve grafik araçları almanızdır. Bu avantajları birleştirmek için bir olasılık var mı? –

+1

@FlorianKusche hem msys/git hem de windows için git/mingw-w64-x86_64-git paketleri grafiksel araçları içerir (gitk ve git gui). Onlar soruda belirtildiği gibi msys/git-out-of-the-box olsalar. i pacman.conf' 'için depo eklenir ve ben "Johannes Schindelin <[email protected]>" hata' imza alıyorum -Sy' 'pacman çalıştırdığınızda bilinmeyen trust',' geçersiz veya bozuk veritabanı –

cevap

2

msys/git cygwin (MSYS2 cygwin gelen çatallı) çalışma şekli için benzer bir şekilde POSIX için Windows uyumluluk (POSIX taklidi) temin etmek üzere MSYS2 tarafından sağlanan dinamik kütüphanesine karşı bağlantılı olduğu, bu nedenle gerektirir MSYS2 ortamının çalışması için mevcut.

git-için-pencerelerin diğer taraftan/mingw-w64-x86_64-git, çok daha hızlı ikili sonuçlanır yerli Windows çevirisini gerçekleştirir derleme anda çağrıları MinGW derleyici, kullanılarak derlenmiştir öykünme yaklaşımıyla karşılaştırıldığında, yalnızca yerel Windows kitaplıklarının çalışmasını gerektirir.The difference between MSYS2 and MinGW itibaren

:

MSYS2 ikili dosyaların POSIX öykünme katmanı uygundur, ama bir maliyetle gelir: Genellikle, MSYS2 programları (örneğin muadilleri varsa) kendi MinGW meslektaşlarının daha noticably yavaştır. Sonuç olarak, Windows için Git projesi, MinGW ikili dosyaları olabildiğince çok bileşen sağlamaya çalışır. Ayrıca

Bkz: Ben sorun örn içinde MSYS2 en budala kullanarak yaşadım How does MSYS2 differ from Cygwin?

İlgili konular