MSysGit vs. Git dla Windows

105

Mam problem z określeniem różnicy między MSysGit i Git dla Windows . Czym się różnią? Dlaczego miałbym wybierać jedną z nich?

Jarrod
źródło
15
+1, to jest w rzeczywistości trudniejsze / bardziej zaangażowane / ważne pytanie, niż się początkowo wydaje.
1
Zobacz także różnią się między msysGit i Cygwin + git: stackoverflow.com/questions/3144082/...
VonC

Odpowiedzi:

79

Czy to nie to samo?

Na: http://msysgit.github.com/ Tytuł to Git dla Windows, aplikacja to msysgit.

Nawet jeśli tak nie jest, spodziewam się, że jedyne różnice będą dotyczyły metody kompilacji (tj. Używanego kompilatora i wszelkich ustawionych opcji) i wszelkich nieistotnych pakietów (takich jak posiadanie powłoki emulującej bash, jak w msysgit). Rzeczywisty produkt (sam Git) powinien pozostać zasadniczo podobny.


Edycja : Dziękuję Jarrodowi za wskazanie tego. Powyższe zostawiłem dla potomności. Cytując wiki:

msysGit to środowisko programistyczne do kompilacji Git dla systemu Windows. Jest kompletne, w tym sensie, że wystarczy zainstalować msysGit, a następnie można zbudować Git. Bez instalowania oprogramowania innych firm. msysGit to nie Git dla Windows; to jest instalator, który instaluje Git - i tylko Git.

Łatwo zauważyć różnicę: instalatory dla Git mają przedrostek Git-, instalatory msysGit mają przedrostek msysGit-. Inną cechą charakterystyczną jest to, że instalatory msysGit występują w dwóch wersjach: pełnej i netinstall. Ponadto msysGit nie instaluje się domyślnie w C: \ Program Files. Ale msysGit jest dostarczany z gcc, kompilatorem GNU C.

Tak więc różnica między tymi dwoma projektami :

  • msysGit to msys+ mingwśrodowisko + wszystko, co jest potrzebne do samodzielnej kompilacji Gita w systemie Windows.
  • Git dla Windows jest dokładnie tym: Git, skompilowany dla Windows.
Mark Amery
źródło
8
Nie sądzę, że są tym samym. Jeśli klikniesz odsyłacz w tym, który opublikowałeś, na wiki znajdziesz „msysGit to nie Git dla Windows”
Jarrod,
2
@Jarrod Myślę, że masz absolutną rację i zaktualizowałem moją odpowiedź.
5
Proszę wybaczyć moją ignorancję, ale dlaczego miałbym chcieć kompilować git? Jeśli chciałem tylko użyć git do kontroli źródła w systemie Windows, czy potrzebuję msysGit?
Jarrod
3
@Jarrod Krótka odpowiedź na twoje pytanie: Nie. Pobierz Git na Windows.
2
@Jarrod: Gdybyś chciał użyć najnowszej wersji gita, chciałbyś go skompilować, aby móc jak najszybciej uzyskać wszystkie ekscytujące nowe funkcje! Robię to na Linuksie.
Cascabel,
16

(Teraz) są takie same (od maja 2015 r., Ale prawdopodobnie nieco wcześniej):

„msysgit” i „Git for Windows” zostały połączone pod nazwą „Git for Windows”. msysgit.github.io obsługuje teraz „Git for Windows”, a główna witryna pobierania git git-scm.com zawiera listę msysgit.github.io jako utrzymywaną kompilację dla systemu Windows.

Ze zaktualizowanej wiki :

... zdecydowaliśmy się po prostu wycofać nazwę „msysGit” (a także organizację GitHub o tej samej nazwie) i pracować nad Git dla Windows (z odpowiednią organizacją GitHub i używając nazwy „Git dla Windows” dla instalator przeznaczony dla „użytkowników końcowych” i „Git for Windows SDK” dla środowiska programistycznego przeznaczonego dla programistów Git dla Windows).

Bryan P
źródło
Jak mogą być takie same, kiedy git-for-windows jest rozwidleniem msysgit, git-for-windows jest trudny w rozwoju, a msysgit już nie, a git-for-windows używa Git 2.4?
BlackEye
1
@Czarne oko. Brzmi jak interesująca historia. Moja odpowiedź była po prostu wskazując, że projekty te zostały teraz połączone (jak opisano na wiki projektu), pomimo ich historii. Wydaje się, że jest to istotne dla wielu osób próbujących zdecydować, którego użyć teraz.
Bryan P
4

Oto fragment „Official README”

„przenośna” wersja Git dla Windows (MSysGit) nie wymaga instalacji. Będzie działać z dowolnego katalogu, w którym go umieścisz, nawet na pendrivie USB. Nie zapisze trwałych wpisów w rejestrze systemu Windows. Do „instalacji” nie są potrzebne uprawnienia administratora. Ta wersja nie oferuje wygodnych wpisów menu kontekstowego „Git GUI Here” i „Git Bash Here” w menu kontekstowym, ponieważ wymagałyby one dodania wpisów do rejestru systemu Windows.

Santhosh Neyyar
źródło
Myślę, że dotyczy to obu z nich.
BlackEye
4

Git dla Windows jest nowszy niż msysGit . Jeśli chcesz używać Git w wersji 2.x, musisz pobrać z https://github.com/git-for-windows/git/releases . https://github.com/msysgit/git/releases jest używany dla Git w wersji 1.x.

Niektóre szczegóły techniczne z https://github.com/git-for-windows/git/wiki/FAQ

Git dla Windows był tworzony przy użyciu środowiska programistycznego zwanego „msysGit”, ale z grubsza pokrywając się z Git 2.1, msysGit został zastąpiony przez nowe środowisko programistyczne: Git for Windows SDK .

Tobias Schultze
źródło
2

Tytuły na stronie pobierania zostały właśnie zaktualizowane, dzięki czemu wersje „Git dla Windows” są w pełni zidentyfikowane. Dostępna jest teraz zarówno wersja `` zainstalowana '' (z opcjami menu prawego przycisku myszy), jak i wersja przenośna, która działa bezpośrednio z karty pamięci itp.

Philip Oakley
źródło
2

Z tego, co rozumiem, Git w systemie Windows to projekt składający się z czterech poniższych podpunktów.

Zrobione bezpośrednio z https://github.com/msysgit/msysgit/wiki :

Git w systemie Windows

Aby wyrazić mleczną „zupę” nazw projektów, mówimy w ten sposób:

  • msysGit - to nazwa tego projektu, środowiska kompilacji dla Git dla Windows, które udostępnia oficjalne pliki binarne

  • MinGW - to minimalistyczne środowisko programistyczne dla natywnych aplikacji Microsoft Windows.

  • MSYS - to system interpretera wiersza poleceń Bourne Shell, używany przez MinGW (i inne), w przeszłości rozwidlony z Cygwin

  • Cygwin - środowisko podobne do Linuksa, które było używane w przeszłości do budowania Git dla Windows, obecnie nie ma żadnego związku z msysGit

netigger
źródło
1
Czy nie brakuje jednej kuli: „git for windows”? Co instaluje przeciętny użytkownik systemu Windows GIT, aby korzystać z GIT. github.com/msysgit/git
Tom
1

To jest bardziej przejrzyste ogólne porównanie bezpośrednio z ich witryny https://github.com/msysgit/msysgit

Git for Windows is the software package that installs a minimal environment to run Git on Windows. It comes with a Bash (a Unix-type shell), with a Perl interpreter and with the Git executable and its dependencies.

On the other hand, msysGit is the software package installing the build environment that can build Git for Windows. The easiest way is to install it via the net installer.
PositiveGuy
źródło
1

Git dla Windows jest prawdopodobnie tym, czego potrzebujesz. Obejmuje następujące podstawowe funkcje:

Git BASH Git dla Windows zapewnia emulację BASH używaną do uruchamiania Git z wiersza poleceń. * Użytkownicy NIX powinni czuć się jak w domu, ponieważ emulacja BASH zachowuje się tak samo jak polecenie „git” w środowiskach LINUX i UNIX.

Git GUI Ponieważ użytkownicy systemu Windows zwykle oczekują graficznych interfejsów użytkownika, Git dla Windows zapewnia również Git GUI, potężną alternatywę dla Git BASH, oferując graficzną wersję prawie każdej funkcji wiersza poleceń Git, a także wszechstronne narzędzia wizualnego porównywania.

Integracja z powłoką Po prostu kliknij prawym przyciskiem folder w Eksploratorze Windows, aby uzyskać dostęp do BASH lub GUI. Wtyczka Git-Cheetah zapewnia również interfejs podobny do TortoiseSVN, który wyświetla funkcje Git bezpośrednio w menu kontekstowym.

Poniższe są dostępne jako osobne pliki do pobrania z tej samej strony ...

msysGit to środowisko do budowania, które zawiera wszystkie narzędzia niezbędne dla programistów, którzy chcą wnieść swój wkład, pisząc kod dla Git dla Windows.


Git BASH zapewnia znane środowisko dla ekspertów od Linuksa, którzy od czasu do czasu muszą korzystać z komputera z systemem Windows - nawet jeśli gitsam nie potrzebuje . Zaczyna się od bash szybkiego i dodaje zbiór podstawowych programów użytkowych, takich jak ssh, find, grep, vi, awk, i, oczywiście git.

Brent Bradburn
źródło
W tej chwili możesz być bardziej zainteresowany podsystemem Windows dla systemu Linux .
Brent Bradburn