Установка SmartGit на компьютере




Git

Цель работы – приобрести практические навыки по внедрению системы версионного контроля; получить навык создания нового проекта под системой версионного контроля, настройки клиентской части; освоить основные операции по работе с системой версионного контроля Git.

 

Теоретическая часть

История Git

С февраля 2002 года для разработки ядра Linux’а большинством программистов стала использоваться система контроля версий BitKeeper. Довольно долгое время с ней не возникало проблем, но в 2005 году Лари МакВоем (разработчик BitKeeper’а) отозвал бесплатную версию программы.

Разрабатывать проект масштаба Linux без мощной и надежной системы контроля версий – невозможно. Одним из кандидатов и наиболее подходящим проектом оказалась система контроля версий Monotine, но Торвальдса Линуса не устроила ее скорость работы. Так как особенности организации Monatone не позволяли значительно увеличить скорость обработки данных, то 3 апреля 2005 года Линус приступил к разработке собственной системы контроля версий – Git.

Практически одновременно с Линусом (на три дня позже), к разработке новой системы контроля версий приступил и Мэтт Макал. Свой проект Мэтт назвал Mercurial, но об этом позже, а сейчас вернемся к распределенной системе контроля версий Git.

 

Основные особенности Git

Git – это гибкая, распределенная (без единого сервера) система контроля версий, дающая массу возможностей не только разработчикам программных продуктов, но и писателям для изменения, дополнения и отслеживания изменения «рукописей» и сюжетных линий, и учителям для корректировки и развития курса лекций, и администраторам для ведения документации, и для многих других направлений, требующих управления историей изменений.

У каждого разработчика, использующего Git, есть свой локальный репозиторий, позволяющий локально управлять версиями. Затем, сохраненными в локальный репозиторий данными, можно обмениваться с другими пользователями.

Часто при работе с Git создают центральный репозиторий, с которым остальные разработчики синхронизируются. Пример организации системы с центральным репозиторием – это проект разработки ядра Linux’a (https://www.kernel.org).

В этом случае все участники проекта ведут свои локальны разработки и беспрепятственно скачивают обновления из центрального репозитория. Когда необходимые работы отдельными участниками проекта выполнены и отлажены, они, после удостоверения владельцем центрального репозитория в корректности и актуальности проделанной работы, загружают свои изменения в центральный репозиторий.

Наличие локальных репозиторием также значительно повышает надежность хранения данных, так как, если один из репозиториев выйдет из строя, данные могут быть легко восстановлены из других репозиториев.

Работа над версиями проекта в Git может вестись в нескольких ветках, которые затем могут с легкостью полностью или частично объединяться, уничтожаться, откатываться и разрастаться во все новые и новые ветки проекта.

 

Это интересно: примерами проектов, использующих Git, являются ядро Linux, Android, Drupal, Cairo, GNU Core Utilities, Mesa, Wine, Chromium, Compiz Fusion, FlightGear, jQuery, PHP, NASM, MediaWiki, DokuWiki, Qt и некоторые дистрибутивы Linux.

 

GitHub

GitHub — крупнейший веб-сервис для хостинга IT-проектов и их совместной разработки. Основан на системе контроля версий Git и разработан на Ruby on Rails и Erlang компанией GitHub, Inc.

Сервис абсолютно бесплатен для проектов с открытым исходным кодом и предоставляет им все возможности (включая SSL), а для частных проектов предлагаются различные платные тарифные планы. Работает с 2008 года.

Слоган сервиса — «Social Coding» — на русский можно перевести как «Пишем код вместе». На футболках же печатают совсем другую фразу: «Fork you!» («Ответвись!»).

 

Это интересно: Талисманом GitHub выбран осьмикот (англ. octocat).

 

Это полезно: внимание, бесплатный аккаунт на GitHub — аккаунт для Open-Source проектов. Вы не сможете закрыть свой код, или скрыть его от других. Не используйте его для проприетарного кода и рабочих проектов!.

 

Установка

Прежде чем использовать Git, вы должны установить его на своем компьютере. Даже если он уже установлен, наверное, это хороший повод, чтобы обновиться до последней версии. Вы можете установить Git из собранного пакета или другого установщика, либо скачать исходный код и скомпилировать его самостоятельно.

 

Это полезно: Оба этих пункта подробно описаны по ссылке: https://git-scm.com/book/ru/v2/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-Git.

 

Кроме того, вы можете установить одну из графических оболочек для работы с Git, которая включает в себя сам Git.

 

SmartGit — кроссплатформенный интерфейс для Git на Java. gitk — простая и быстрая программа, написана на Tcl/Tk, распространяется с самим Git. QGit, интерфейс которого написан с использованием Qt, во многом схож с gitk, но несколько отличается набором возможностей. Giggle — вариант на Gtk+. gitg — ещё один интерфейс для gtk+/GNOME. Git Extensions — кроссплатформенный вариант на.NET. TortoiseGit — интерфейс, реализованный как расширение для проводника Windows. SourceTree — бесплатный git клиент для Windows и Mac. Git-cola — кроссплатформенный интерфейс на Python. GitX — оболочка для Mac OS X с интерфейсом Cocoa, интерфейс схож с gitk. Gitti — оболочка для Mac OS X с интерфейсом Cocoa. Gitbox — оболочка для Mac OS X с интерфейсом Cocoa. StGit — написанная на Python система управления коллекцией патчей (Catalin Marinas).

 

 


 

Практическая часть

Установка SmartGit на компьютере

 

SmartGit/Hg — кроссплатформенный визуальный клиент системы управления версиями Git, Mercurial и Subversion, который работает на Windows, Mac OS X и Linux.

 

1. Перейдите на сайт SmartGit (https://www.syntevo.com/smartgit/). Скачайте версию для Windows (рис. 2.1).

 

Это важно: не смотря на то, что поддержка Windows XP не указана вы все равно сможете запустить SmartGit под этой ОС.

 

Рисунок 2.1 – Сайт TortoiseSVN

 

Далее, как в лекции № 3.

 

Контрольные вопросы

1. Для чего при разработке программных систем используются система контроля версий?

2. Какие системы контроля версий вы знаете?

3. Что такое Git?

4. Что такое GitHub?

5. Перечислите основные возможности Git.

6. Перечислите основные возможности SmartGit.

7.Что такое репозиторий?

8.Что такое рабочая копия?

9.Опишите механизм контроля версий.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-21 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: