Git
| Розробник(и) | Лінус Торвальдс, Джуніо Хамано |
|---|---|
| Стабільний випуск | 1.8.2 (15 березня 2013) |
| Операційна система | POSIX |
| Тип | Система керування версіями |
| Ліцензія | GNU GPL |
| Сайт | git-scm.com |
Git — розподілена система керування версіями файлів та спільної роботи. Проект створив Лінус Торвальдс для управління розробкою ядра Linux, а сьогодні підтримується Джуніо Хамано (англ. Junio C. Hamano). Git є однією з найефективніших, надійних і високопродуктивних систем керування версіями, що надає гнучкі засоби нелінійної розробки, що базуються на відгалуженні і злитті гілок. Для забезпечення цілісності історії та стійкості до змін заднім числом використовуються криптографічні методи, також можлива прив'язка цифрових підписів розробників до тегів і комітів.
Прикладами проектів, що використовують Git, є ядро Linux, Android, LibreOffice, Cairo, GNU Core Utilities[1], Mesa 3D[2], Wine, багато проектів з X.org[3], XMMS2[4], GStreamer, Debian DragonFly BSD, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, PostgreSQL, VideoLAN, PHP, Beryl[5], One Laptop Per Child (OLPC), АБІС Koha, GNU LilyPond[6] та ELinks[7] і деякі дистрибутиви GNU/Linux (див. нижче).
Програма є вільною і випущена під ліцензією GNU GPL версії 2.
Система спроектована як набір програм, спеціально розроблених з врахуванням їхнього використання у скриптах. Це дозволяє зручно створювати спеціалізовані системи управління версіями на базі Git або користувацькі інтерфейси. Наприклад, Cogito[8] є саме таким прикладом фронтенда до репозиторіїв Git. А StGit[9] використовує Git для управління колекцією латок.
Система має ряд користувацьких інтерфейсів: наприклад, gitk та git-gui розповсюджуються з самим Git.
Віддалений доступ до репозиторіїв Git забезпечується git-демоном, SSH або HTTP сервером. TCP-сервіс git-daemon входить у дистрибутив Git і є разом з SSH найбільш поширеним і надійним методом доступу. Метод доступу HTTP, незважаючи на ряд обмежень, дуже популярний в контрольованих мережах, тому що дозволяє використання існуючих конфігурацій мережевих фільтрів.
Зміст |
[ред.] Візуалізатори історії
- gitk проста, але перевірена і швидка програма. Написана на Tcl/Tk, розповсюджується з самим Git.
- QGit (Sourceforge) інтерфейс написаний з використанням Qt, багато в чому схожий з gitk, але дещо відрізняється набором можливостей (Marco Costalba). В наш час[Коли?] переписується на Qt4, що спростить його портування на Microsoft Windows.
- Giggle — варіант на Gtk+.
- gitg — ще один інтерфейс для gtk+/GNOME
- Git-Cola — потужний графічний інтерфейс для Git.
- TortoiseGit — інтерфейс, реалізований як розширення для провідника Windows.
[ред.] Веб-інтерфейси
- gitweb — написаний на Perl (англ. Kay Sievers). Більшість наведених нижче великих публічних git-репозиторіїв його й застосовує.
- wit — написаний на Python (англ. Christian Meder)
- gitarella — Ruby (Diego Pettenò)
- git-php — PHP (англ. Zack Bartel)
- cgit — написаний на C (англ. Lars Hjemli)
- cogito — інтерфейс з командами спроектованими для користувачів звиклих до CVS та SVN (англ. Petr Baudis)
- StGit — написана на Python система керування колекцією латок (англ. Catalin Marinas)
[ред.] Обмін змінами з іншими системами управління версіями
- CVS — імпорт і експорт, емуляція CVS-сервера, в стандартному постачанні
- Subversion — імпорт і експорт (частково), в стандартному постачанні
- .tar.gz, .tar.bz2 (серії версійних файлів) — імпорт і експорт, в стандартному постачанні
- Perforce — імпорт і експорт (частково), в стандартному постачанні і в архівах Git Mailing List
- Mercurial — імпорт і експорт, в стандартному постачанні і за допомогою зовнішньої програми (Tailor)
Крім того, завдяки своїй структурі даних та форматам даних обміну Git дозволяє порівняно просто і ефективно реалізувати обмін даними практично зі всіма існуючими системами управлінням версіями.
[ред.] Проекти, що використовують Git
Git застосовується в багатьох проектах; можна відзначити як апстріми, так і дистрибутиви GNU/Linux:
- Linux [1]
- freedesktop.org (там же і X.org)
- Wine [2]
- Debian [3]
- Perl[10]
- ALT Linux [4] (Hasher[11] та Gear[12])
[ред.] Виноски
[ред.] Дивіться також
- Україномовна документація Git
- Домашня сторінка Git
- Переклад українською книги "Pro Git" Скотта Чакона (Scott Chacon)
- Книга "Git Magic" українською
- Git User’s Manual (англ.) (також розповсюджується разом з початковим текстом програми:
Documentation/user-manual.txt) - Сторінка Git на kernel.org
- Everyday Git («Git на кожен день») — набір з приблизно 20 команд (насправді їх буде близько 5-6), які стануть у пригоді в повсякденному використанні системи.
- Linus Torvalds on Git — розповідь Лінуса Торвальдса про git та інші системи керування версіями (YouTube)
- Патчення з допомогою git, cogito та quilt
- Базове використання Git
|
|||||||||||||||||||||||||||||||||||||||

