MSysGit vs. Git для Windows


105

У мене виникають проблеми з визначенням різниці між MSysGit та Git для Windows . Чим вони відрізняються? Чому я б обрав одне над іншим?


15
+1, це насправді важче / більш пов'язане / важливе питання, ніж це з'являється спочатку.

1
Дивіться також Different між msysgit і Cygwin + мерзотник? Stackoverflow.com/questions/3144082 / ...
VonC

Відповіді:


79

Чи не однакові вони?

Увімкнено: http://msysgit.github.com/ Назва - Git для Windows, додаток - msysgit.

Навіть у випадку, якщо їх немає, я очікую, що єдині відмінності полягатимуть у способі компіляції (тобто використовуваному компіляторі та будь-яких параметрах) та будь-якій сторонній упаковці (наприклад, що має оболонку емуляції bash, як у msysgit). Фактичний продукт (сам Git) повинен залишатися подібним.


Редагувати : Дякую Джарроду, що вказав на це. Я залишив вищезазначене для нащадків. Для цитування вікі:

msysGit - середовище розробки для компіляції Git для Windows. Це завершено, в тому сенсі, що вам просто потрібно встановити msysGit, і тоді ви можете побудувати Git. Без встановлення будь-якого стороннього програмного забезпечення. msysGit не є Git для Windows; це інсталятор, який встановлює Git - і тільки Git.

Неважко помітити різницю: інсталятори для Git мають префікс Git-, а встановники msysGit мають префікс msysGit-. Ще одна повістка полягає в тому, що інсталятори msysGit поставляються у двох варіантах: fullinstall та netinstall. Крім того, msysGit не встановлюється до програмних файлів C: \ за замовчуванням. Але msysGit поставляється з gcc, компілятором GNU C.

Отже, різниця між двома проектами :

  • msysGit є msys+ mingwдовкілля + все необхідне для компіляції Git себе, на Windows.
  • Git для Windows саме такий: Git, складений для Windows.

8
Я не думаю, що вони однакові. Якщо ви перейдете за посиланням на опублікованому вами, ви знайдете "msysGit не Git для Windows" на вікі
Jarrod

2
@Jarrod Я думаю, ви абсолютно правильні, і я оновив свою відповідь.

5
Вибачте, будь ласка, про моє незнання, але навіщо я хотів би скласти git? Якщо я просто хотів використовувати git для управління джерелом у Windows, чи потрібно мені msysGit?
Jarrod

3
@Jarrod Коротка відповідь на ваше запитання: Ні. Отримайте Git у Windows.

2
@Jarrod: Ви хочете скласти його самостійно, якби хотіли скористатись останньою версією git, щоб ви могли отримати якнайшвидше всі нові захоплюючі функції! Я роблю це на Linux.
Каскабель

16

(Зараз) вони однакові (станом на травень 2015 року, але, можливо, трохи раніше):

"msysgit" і "Git для Windows" об'єдналися під назвою "Git для Windows". msysgit.github.io тепер розміщує "Git для Windows", а основний сайт завантаження git git-scm.com зазначає msysgit.github.io як підтримувану збірку для Windows.

З оновленої вікі :

... ми вирішили просто припинити ім'я "msysGit" (а також однойменний GitHub org) і попрацювати над Git для Windows (з відповідним GitHub org і, використовуючи назву "Git для Windows" для інсталятор, орієнтований на "кінцевих користувачів" та "Git для Windows SDK" для середовища розробки, орієнтованого на Git для розробників Windows).


Як вони можуть бути однаковими, коли git-for-windows - це вилка msysgit, git-for-windows важко розвивається, а msysgit - ні, а git-for-windows використовує Git 2.4?
BlackEye

1
@Синяк під оком. Звучить цікава історія. У моїй відповіді якраз було вказано, що ці проекти тепер об'єдналися (як це описано у вікі проекту), незважаючи на їхню історію. Здається, це актуально для багатьох людей, які намагаються розібратися, який з них використовувати зараз.
Брайан П

4

Ось уривок "Офіційний README"

"портативна" версія Git для Windows (MSysGit) не потребує встановлення. Він запускатиметься з будь-якого каталогу, в який ви розміщуєте, навіть на USB-накопичувачі. Він не записуватиме постійні записи до реєстру Windows. Для його установки не потрібні права адміністратора. Ця версія не пропонує вам зручних пунктів контекстного меню правою кнопкою миші "Git GUI Here" та "Git Bash Here", оскільки для цього потрібно буде додати записи до реєстру Windows.


Це стосується обох, я думаю.
BlackEye

4

Git для Windows новіший, ніж msysGit . Якщо ви хочете використовувати Git версії 2.x, вам потрібно завантажити з https://github.com/git-for-windows/git/releases . https://github.com/msysgit/git/releases використовується для Git версії 1.x.

Деякі технічні деталі з https://github.com/git-for-windows/git/wiki/FAQ

Раніше Git для Windows розроблявся за допомогою середовища розробки, що називається "msysGit", але приблизно збігається з Git 2.1, msysGit було замінено новим середовищем розробки: Git для Windows SDK .


3

Оскільки багато відповідей у ​​цій публікації старі.

Станом на листопад 2015 року,

Git для Windows 1.x на основі msysGit замінено Git для Windows 2.x.

Git для Windows і git-scm вказують на одне і те ж місце завантаження для їх двійкового файлу

Місце завантаження:

https://github.com/git-for-windows/git/releases/download/v2.7.1.windows.2/Git-2.7.1.2-64-bit.exe


2

Назви на сторінці завантаження щойно оновлено, так що версії "Git для Windows" повністю ідентифіковані. Зараз є як "встановлена" версія (з параметрами меню правою кнопкою миші), так і портативна версія, яка працює безпосередньо з флеш-пам'яті тощо.


2

З того, що я розумію, Git в Windows - це проект, що складається з чотирьох пунктів нижче.

Взяте безпосередньо з https://github.com/msysgit/msysgit/wiki :

Git на Windows

Щоб зробити молочний "суп" назв проектів більш чітким, ми говоримо так:

  • msysGit - це назва цього проекту, середовище збирання Git для Windows, яке випускає офіційні бінарні файли

  • MinGW - це мінімалістичне середовище розробки для рідних програм Microsoft Windows.

  • MSYS - це система інтерпретатор командного рядка Bourne Shell, використовується MinGW (і інших), був роздвоєний в минулому від Cygwin

  • Cygwin - середовище схоже на Linux, яке в минулому використовувалося для створення Git для Windows, сьогодні не має відношення до msysGit


1
Чи не відсутня одна куля: "git for windows"? Що середній користувач Windows GIT встановлює для використання GIT. github.com/msysgit/git
Том

1

Це більш чітке загальне порівняння прямо з їхнього сайту 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.

1

Git для Windows - це, мабуть, те, що ви хочете. Вона включає такі основні особливості:

Git BASH Git для Windows забезпечує емуляцію BASH, що використовується для запуску Git з командного рядка. * Користувачі NIX повинні відчувати себе як вдома, оскільки емуляція BASH поводиться так само, як команда "git" в середовищах LINUX та UNIX.

Git GUI користувачі як Windows зазвичай очікують графічних призначених для користувача інтерфейсів, Git для Windows , також забезпечує Git GUI, потужна альтернатива Git BASH, пропонуючи графічну версію тільки про кожну функції командного рядка Git, а також комплексні візуальні інструменти порівняння.

Інтеграція оболонки Просто натисніть правою кнопкою миші на папці в Windows Explorer, щоб отримати доступ до BASH або GUI. Плагін Git-Cheetah також надає TortoiseSVN-інтерфейс, який відображає функції Git безпосередньо в контекстному меню.

Далі доступне окреме завантаження з тієї ж сторінки ...

msysGit - це середовище збирання, яке включає всі інструменти, необхідні розробникам, які хочуть внести свій внесок, написавши код для Git для Windows.


Git BASH забезпечує звичне середовище для експертів Linux, яким періодично потрібно користуватися машиною Windows - навіть якщо вони самі gitсобі не потрібні . Вона починається з BASH швидкого і додає набір основних утиліт , таких як ssh, find, grep, vi, awk, і, звичайно ж git.



На даний момент вас може зацікавити підсистема Windows для Linux .
Брент Бредберн
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.