Руководство пользователя по Git - Учебный курс по среде IDE NetBeans
Руководство пользователя по Git
Интегрированная среда разработки NetBeans поддерживает Git, клиентскую программу контроля версий. Благодаря этой поддержке выполнять задачи контроля версий можно непосредственно из среды IDE. В данном документе демонстрируются основные задачи контроля версий в среде IDE. Описана стандартная последовательность действий при использовании программного обеспечения контроля версий.
Git является распределенной системой с открытым кодом, предназначенной для быстрого и эффективного контроля версий как в небольших, так и в масштабных проектах. Каждый клон Git представляет собой полнофункциональный репозиторий с полным набором возможностей отслеживания редакций и истории, не зависящими от наличия сетевого доступа или доступа к центральному серверу. Операции ветвления и слияния выполняются быстро и без затруднений. Использование Git для контроля версий файлов в большой степени сходно с использованием таких систем, как Mercurial, Subversion, CVS, Perforce и т.п.
Для инициализации репозитория Git с использованием существующих файлов, контроль исходных кодов которых еще не осуществляется, требуется выполнить следующие действия.
В диалоговом окне проектов выберите проект без контроля версий и щелкните имя проекта правой кнопкой мыши.
В контекстном меню выберите Создание версии > Инициализировать репозиторий Git (или выберите в главном меню Группа > Git > Инициализировать).
В диалоговом окне Инициализировать репозиторий Git укажите путь к репозиторию, в котором будут храниться файлы с контролем версий, или щелкните "Обзор" и выберите требуемый каталог.
Нажмите кнопку "ОК".
В папке, указанной выше в шаге 3 (папка проекта NetBeans по умолчанию), создается вложенная папка .git, являющаяся репозиторием Git, в котором будут храниться все данные моментальных снимков проекта. В указанной папке Git запускает создание версий для всех файлов. В окне Окно > Вывод > Выходные данные можно просмотреть отчет среды IDE о ходе создания репозитория в локальном рабочем каталоге.
В рабочем дереве все файлы проекта помечены как Добавленные. Для просмотра состояния файла наведите курсор на имя файла в окне проектов. В рабочем дереве состояние файла отображается в зеленом цвете справа от косой черты, как показано на следующем рисунке.
После инициализации репозитория Git выполняется либо добавление файлов, либо непосредственная фиксация файлов в репозитории Git.
Клонирование репозитория Git
Для получения копии уже существующего репозитория Git необходимо выполнить операцию его клонирования. Прежде чем запустить мастера клонирования репозитория в среде IDE, следует узнать URL-адрес репозитория Git.
В главном меню выберите Группа > Git > Клонировать. Отображается мастер клонирования репозитория.
На странице "Репозиторий" укажите путь к местоположению репозитория Git, имя пользователя и пароль (при необходимости эти данные можно сохранить для использования в дальнейшем).
(Не обязательно) Щелкните "Настройка прокси" для отображения диалогового окна "Параметры" и установите настройки сервера прокси. По завершении нажмите кнопку "ОК".
Нажмите кнопку "Далее" для перехода к следующему действию мастера.
На странице "Удаленные ветви" выберите ветви репозитория, которые требуется загрузить (или из которых надо загрузить изменения) в локальный репозиторий. Нажмите кнопку "Далее".
На странице "Целевой каталог" укажите следующие данные.
В поле "Родительский каталог" введите путь к каталогу на жестком диске, выбранному для размещения клонированного репозитория (или нажмите кнопку "Обзор" и выберите требуемый каталог).
В поле "Родительский каталог" выводится путь к каталогу по умолчанию NetBeansProjects, в котором хранятся все проекты NetBeans.
В поле "Имя клона" введите имя локальной папки, в которой требуется создать клон исходного проекта.
По умолчанию в поле "Имя клона" выводится имя текущего репозитория Git.
В поле "Извлечение ветви" выберите ветвь, которую требуется извлечь в рабочее дерево.
В поле "Удаленное имя" введите имя исходного клонируемого репозитория.
По умолчанию для клонируемого репозитория используется псевдоним origin. Рекомендуется использовать это значение.
Оставьте установленным флажок "Поиск проектов Netbeans после клонирования", чтобы поиск проектов выполнялся непосредственно после окончания клонирования. (Этот подключаемый модуль выполняет поиск проектов NetBeans в клонированных ресурсах и предлагает открыть обнаруженные проекты.)
Нажмите кнопку "Готово". По завершении клонирования репозитория Git создается папка .git с метаданными в папке, выбранной на соответствующем шаге мастера.
Клонирование репозитория Git из GitHub с использованием протокола SSH
Для клонирования репозитория Git из GitHub с использованием протокола SSH выполните следующие действия.
Примечание. Для клонирования с использованием SSH необходимо иметь учетную запись GitHub и являться участником проекта.
В главном меню выберите Группа > Git > Клонировать. Отображается мастер клонирования репозитория.
На странице "Удаленный репозиторий" мастера клонирования репозиториев укажите путь к требуемому репозиторию в поле "URL-адрес репозитория", например :tstupka/koliba.git.
Убедитесь, что в текстовом поле "Имя пользователя" указано git.
Выберите вариант ключа — закрытый или открытый.
Укажите путь к файлу ключей, например C:\Users\key.
Введите парольную фразу для файла ключей, например abcd.
(Не обязательно) Если требуется, установите флажок "Сохранить парольную фразу".
(Не обязательно) Щелкните "Настройка прокси" для отображения диалогового окна "Параметры" и установите настройки сервера прокси. По завершении нажмите кнопку "ОК".
Нажмите кнопку "Далее".
На странице "Удаленные ветви" выберите ветвь(и) репозитория, которую(ые) требуется загрузить (или из которых надо загрузить изменения) в локальный репозиторий, например master.
Нажмите кнопку "Далее".
На странице "Целевой каталог" укажите следующие данные.
В поле "Родительский каталог" введите путь к каталогу на жестком диске, выбранному для размещения клонированного репозитория (или нажмите кнопку "Обзор" и выберите требуемый каталог).
В поле "Родительский каталог" выводится путь к каталогу по умолчанию NetBeansProjects, в котором хранятся все проекты NetBeans.
В поле "Имя клона" введите имя локальной папки, в которой требуется создать клон исходного проекта.
По умолчанию в поле "Имя клона" выводится имя текущего репозитория Git.
В поле "Извлечение ветви" выберите ветвь, которую требуется извлечь в рабочее дерево.
В поле "Удаленное имя" введите имя исходного клонируемого репозитория.
По умолчанию для клонируемого репозитория используется псевдоним origin. Рекомендуется использовать это значение.
Оставьте установленным флажок "Сканировать проекты Netbeans после клонирования", чтобы сканирование проектов выполнялось непосредственно после окончания клонирования. (Этот подключаемый модуль выполняет поиск проектов NetBeans в клонированных ресурсах и предлагает открыть обнаруженные проекты.)
Нажмите кнопку "Готово".
По завершении клонирования репозитория отображается сообщение "Клонирование завершено".
Выберите требуемый параметр.
Добавление файлов в репозиторий Git
Для запуска отслеживания нового файла, а также для помещения на подготовку изменений файла, уже отслеживаемого в репозитории Git, необходимо его добавить в репозиторий.
При добавлении файлов в репозиторий Git в среде IDE сначала формируются и сохраняются в индексе моментальные снимки проекта. После выполнения фиксации среда IDE сохраняет эти моментальные снимки в HEAD. Среда IDE дает возможность выбрать одну из последовательностей действий, описанных в следующей таблице.
Описание последовательности действий
Явным образом добавьте новые или измененные файлы в индекс, после чего выполните фиксацию в HEAD только тех файлов, которые помещены в индекс для подготовки.
Пропустите добавление новых или измененных файлов в индекс и выполните фиксацию требуемых файлов непосредственно в HEAD.
Шаги по выполнению выбранной последовательности действий
В окне проектов щелкните добавляемый файл правой кнопкой мыши.
В контекстном меню выберите Git > Добавить.
Содержимое файла добавляется в индекс перед выполнением фиксации.
В окне проектов щелкните правой кнопкой мыши файл, для которого требуется выполнить фиксацию.
В диалоговом окне "Зафиксировать" выберите кнопку-переключатель "Взаимные изменения в HEAD и индексе" ( ). Отобразится список файлов, уже помещенных на подготовку.
В окне проектов щелкните правой кнопкой мыши файл, для которого требуется выполнить фиксацию.
В контекстном меню выберите Git > Зафиксировать.
В диалоговом окне фиксации выберите кнопку-переключатель "Выбрать взаимные изменения в индексе и рабочем дереве" ().
Отобразится список файлов, еще не помещенных на подготовку.
Примечание.Состояние файла в HEAD отображается в зеленом цвете слева от косой черты, как показано на следующем рисунке.
Действие отрабатывается рекурсивно, если оно вызывается для папок, для которых поддерживается структура содержимого папок среды IDE NetBeans без иерархии.
Редактирование файлов
После открытия в среде IDE проекта с контролем версий посредством системы Git, можно приступать к внесению изменений в исходные коды. Как обычно, файлы проекта, открытого в среде IDE NetBeans, которые отображены в окнах (например "Проекты" (Ctrl-1), "Файлы" (Ctrl-2), "Избранное" (Ctrl-3)), открываются в редакторе исходного кода двойным щелчком соответствующего узла.
При работе с исходными файлами в среде IDE пользователь получает доступ к различным компонентам пользовательского интерфейса, облегчающими просмотр и использование следующих команд контроля версий.
Если файл с контролем версий открыт в среде IDE в редакторе исходного кода, то при внесении в файл изменений можно в режиме реального времени сравнивать файл с его основной версией, находящейся в репозитории Git. В процессе работы в среде IDE используется цветовое выделение на полях редактора исходного кода. Различные цвета соответствуют следующей информации.
Голубой ( )
Отмечает строки, в которые внесены изменения после создания предыдущей редакции.
Зеленый ( )
Отмечает строки, которые были добавлены после создания предыдущей редакции.
Красный ( )
Отмечает строки, которые были удалены после создания предыдущей редакции.
В левом поле редактора исходного кода появившиеся изменения отмечаются построчно. Если вносятся изменения в некоторую строку, эти изменения незамедлительно отражаются в левом поле.
Примечание. Щелкнув цветную группу на полях, можно получить доступ к командам контроля версий. Например, ниже на рисунке показаны элементы оформления, доступ к которым можно получить, щелкнув красный значок, который указывает на то, что соответствующие строки были удалены из локальной копии.
В левом поле редактора исходного кода предоставляется обзор изменений, внесенных в файл в целом, от начала до конца. Цветовое выделение отображается незамедлительно после внесения изменений в файл.
Примечание. Щелкнув некоторую точку в пределах поля, можно незамедлительно перевести внутристрочный курсор в соответствующее местоположение в файле. Для отображения номеров задействованных строк следует навести указатель мыши на цветные значки в правом поле.
Просмотр информации о состоянии файла
При работе в представлениях "Проекты" (Ctrl-1), "Файлы" (Ctrl-2), "Избранное" (Ctrl-3), или "Контроль версий", среда IDE предоставляет несколько функций визуализации, облегчающих просмотр информации о состоянии файлов. В приведенном ниже примере обратите внимание на то, как метка (например, ), цвет имени файла и смежный ярлык состояния согласованы друг с другом, что обеспечивает простой, но эффективный способ отслеживания информации о версиях файлов.
Все эти компоненты — метки, цветовое выделение, ярлыки состояния файлов и средство Git для просмотра различий (Git Diff Viewer — возможно, наиболее важный компонент) — вместе обеспечивают возможность эффективного просмотра информации о версиях и управления этой информацией в среде IDE.
Метки относятся к проекту, папке и узлам пакета и информируют о состоянии файлов, содержащихся в данном узле.
В следующей таблице показана цветовая схема, используемая для меток.
Компонент пользовательского интерфейса
Описание
Голубая метка ()
Указывает на присутствие в рабочем дереве файлов, которые были изменены, добавлены или удалены. В случае пакетов эта метка относится только к самому пакету, но не к его подпакетам. В случае проектов или папок эта метка указывает на изменения, сделанные в соответствующем элементе или в какой-то из содержащихся в нем папок.
Красная метка ()
Отмечает проекты, папки или пакеты, содержащие конфликтующие файлы. В случае пакетов эта метка относится только к самому пакету, но не к его подпакетам. В случае проектов или папок эта метка указывает на наличие конфликта в рамках соответствующего элемента или любой из содержащихся в нем вложенных папок.
Цветовое выделение применяется к именам файлов для указания их текущего состояния в сравнении с состоянием файла в репозитории.
Цвет
Например
Описание
Без специального цвета (черный)
Указывает на отсутствие изменений в файле.
Голубой
Указывает на то, что файл был изменен локально.
Зеленый
Указывает на то, что файл был добавлен локально.
Красный
Указывает на то, что файл вовлечен в конфликт слияния.
Серый
Указывает на то, что файл игнорируется системой Git и не будет включен в команды контроля версий (например, "Обновить" и "Зафиксировать"). Файлы, стоящие под контролем версий, игнорировать невозможно.
Ярлыки состояния файлов
В среде IDE отображаются следующие два возможных состояния файла.
Состояние, описывающее различия между состоянием файлов в рабочем дереве и в индексе.
Состояние, описывающее различия между состоянием файлов в индексе и текущей фиксацией в HEAD.
Ярлыки состояния файлов предоставляют текстовое описание состояния файлов с контролем версий в окнах среды IDE.
Ярлык состояния
Значение
-
Неизмененный
A
Добавлено
U
Обновленный, но не подвергавшийся слиянию
M
Изменено
D
Удален
I
Игнорируется
R
Переименовано
По умолчанию в окнах среды IDE состояние (новый, измененный, игнорируется и т.п.) и информация о папке отображаются в сером цвете справа от файлов, представленных в виде списка.
Файлы, вовлеченные в конфликт слияния, характеризуются как не подвергавшиеся слиянию — как правило, это отмечается красным цветом до тех пор, пока конфликт файлов не будет разрешен в результате явного действия пользователя. Ярлык состояния файлов, не подвергавшихся слиянию, зависит от конкретной ситуации (например, A/A - не подвергавшиеся слиянию, оба добавлены).
Ярлыки состояния файлов можно переключать (активировать и деактивировать), выбирая в главном меню Вид > Показать ярлыки контроля версий.
Представление Git "Контроль версий"
Представление Git "Контроль версий" дает возможность просматривать в режиме реального времени список всех изменений, внесенных в файлы конкретной папки локального рабочего дерева. По умолчанию это представление со списками добавленных, удаленных или измененных файлов открывается внизу панели среды IDE.
Чтобы открыть представление "Контроль версий", выберите файл или папку с контролем версий (например, в окне "Проекты", "Файлы" или "Избранное") и либо выберите Git > Показать изменения в контекстном меню, либо выберите в главном меню Группа > Git > Показать изменения. Внизу окна среды IDE откроется следующее окно.
По умолчанию в представлении "Контроль версий" отображается список всех измененных файлов, содержащихся в выбранном пакете или папке рабочего дерева. С помощью кнопок панели инструментов можно выбрать для отображения список файлов, для которых имеются различия между индексом и HEAD, рабочим деревом и индексом или рабочим деревом и HEAD. Для сортировки файлов по имени, состоянию или местоположению следует щелкнуть заголовок соответствующего столбца над списком файлов.
Панель инструментов представления "Контроль версий" содержит также кнопки, позволяющие вызывать стандартные задачи для всех файлов, отображенных в списке. В следующей таблице приведены команды Git, которые можно вызвать с панели инструментов представления "Контроль версий".
Значок
Имя
Функция
Взаимные изменения в HEAD и рабочем дереве
Отображается список файлов, уже помещенных на подготовку, или только измененных/созданных, но еще не помещенных на подготовку.
Взаимные изменения в HEAD и указателе
Отображается список файлов, помещенных на подготовку.
Взаимные изменения в индексе и рабочем дереве
Отображаются файлы, у которых есть различия между состоянием версии, помещенной на подготовку, и состоянием в рабочем дереве.
Обновить состояния
Выполняется обновление состояний выбранных файлов и папок. При обновлении файлов, отображенных в представлении "Контроль версий", отражаются все изменения, которые могли быть сделаны извне.
Открыть окно с различиями
Открывается окно программы просмотра различий, в котором сравниваются параллельно отображенные локальные копии и версии, хранящиеся в репозитории.
В представлении "Контроль версий" можно получить доступ к другим командам Git, выделив строку таблицы, соответствующую измененному файлу, и выбрав команду в контекстном меню.
Сравнение редакций файла
Сравнение версий файла является стандартной задачей, выполняемой в процессе работы над проектами с контролем версий. В среде IDE сравнение редакций выполняется с помощью команды Diff.
Выберите файл или папку с контролем версий (например, в окне Проекты, Файлы или Избранное).
В главном меню выберите Группа > Diff.
В главном окне среды IDE открывается окно графического представления различий для выбранных файлов и редакций. В окне графического представления различий, на смежных панелях, отображаются две копии. Более новая копия отображается справа, поэтому, если выполняется сравнение редакции из репозитория с рабочим деревом, рабочее дерево отображается на правой панели.
В программе просмотра различий используется такое же цветовое выделение, которое используется для отображения изменений другими компонентами системы контроля версий. На снимке экрана, показанном выше, зеленый блок представляет собой содержимое, добавленное в более новую редакцию. Красный блок представляет собой содержимое из более ранней редакции, впоследствии из нее удаленное. Голубой цвет указывает на наличие изменений в выделенных строках.
Панель инструментов программы просмотра различий содержит также кнопки, позволяющие вызывать стандартные задачи Git для всех файлов, отображенных в списке. В следующей таблице приведены команды Git, которые можно вызвать с панели инструментов программы просмотра различий.
Значок
Имя
Функция
Взаимные изменения в HEAD и рабочем дереве
Отображается список файлов, уже помещенных на подготовку, или только измененных/созданных, но еще не помещенных на подготовку.
Взаимные изменения в HEAD и указателе
Отображается список файлов, помещенных на подготовку.
Взаимные изменения в индексе и рабочем дереве
Отображаются файлы, у которых есть различия между состоянием версии, помещенной на подготовку, и состоянием в рабочем дереве.
Перейти к следующему отличию
Отображается следующее отличие в файле.
Перейти к предыдущему отличию
Отображается предыдущее отличие в файле.
Обновить состояния
Выполняется обновление состояний выбранных файлов и папок. При обновлении файлов, отображенных в окне "Контроль версий", отражаются все изменения, которые могли быть сделаны извне.
Если выполняется просмотр различий для локальной копии в рабочем дереве, среда IDE дает возможность внести изменения непосредственно из программы просмотра различий. Для этого следует поместить курсор на правую панель программы просмотра различий и внести требуемые изменения, либо использовать встроенные значки, отображающиеся рядом с каждым выделенным изменением.
Значок
Имя
Функция
Заменить
Выделенный текст вставляется в копию из рабочего дерева.
Переместить все
Выполняется откат всей локальной копии из рабочего дерева.
Удалить
Выделенный текст удаляется из локальной копии в рабочем дереве.
Откат изменений
Для отсеивания локальных изменений, внесенных в выбранные файлы из рабочего дерева, и замены этих файлов файлами из индекса или HEAD выполните следующие действия.
Выберите файл или папку с контролем версий (например, в окне Проекты, Файлы или Избранное).
В главном меню выберите Группа > Откатить изменения.
Откроется диалоговое окно Откат изменений.
Укажите дополнительные параметры (например, Откатить в индексе только изменения, незафиксированные в HEAD) .
Щелкните "Откатить".
Среда IDE заменяет выбранные файлы теми, которые указаны выше в шаге 3.
Фиксация исходных кодов в репозитории
Для фиксации файлов в репозитории Git выполните следующие действия.
В окне Проекты щелкните правой кнопкой мыши файл, для которого требуется выполнить фиксацию.
В контекстном меню выберите Git > Зафиксировать.
Открывается диалоговое окно Фиксация.
Диалоговое окно Фиксация состоит из следующих компонентов.
Текстовая область Сообщение о фиксации предназначена для описания фиксируемого изменения.
Раскрывающиеся списки Автор и Исполнитель, которые в случае необходимости позволяют выяснить, кто внес изменение и кто физически выполнил фиксацию файла.
Раздел Файлы для фиксации, в котором перечислены следующие файлы:
все измененные файлы;
все файлы, которые были удалены из рабочего дерева (локально);
все новые файлы (т.е. файлы, еще не представленные в репозитории Git);
все файлы, которые были переименованы.
Здесь же имеются две кнопки-переключателя, осуществляющие переключение на режим, в котором следует выполнить фиксацию.
Компонент пользовательского интерфейса
Имя
Описание
Взаимные изменения в HEAD и указателе
Отображается список файлов, помещенных на подготовку.
Взаимные изменения в HEAD и рабочем дереве
Отображается список файлов, уже помещенных на подготовку, или только измененных/созданных, но еще не помещенных на подготовку.
Примечание. Для исключения конкретных файлов из процесса фиксации следует снять флажок в первом столбце с именем Зафиксировать или щелкнуть правой кнопкой мыши строку файла в столбце Действие фиксации и во всплывающем меню выбрать Исключить из фиксации. Чтобы здесь отобразить окно просмотра различий, в столбце Действие фиксации щелкните строку файла правой кнопкой мыши и во всплывающем меню выберите Различия.
Раздел Обновить проблему предназначен для отслеживания проблем, связанных с фиксируемым изменением.
Примечание. Для запуска в среде IDE режима отслеживания проблем требуется установить подключаемый модуль для JIRA или Subversion.
Введите сообщение о фиксации в текстовую область Сообщение о фиксации. Можно также выполнить любое из следующих действий.
Щелкните значок Последние сообщения ( ), находящийся в правом верхнем углу, чтобы выбрать требуемое сообщение из списка сообщений, использовавшихся ранее.
Щелкните значок Загрузить шаблон (), находящийся в правом верхнем углу, чтобы выбрать шаблон сообщения.
Назначив действия для конкретных файлов, щелкните Зафиксировать. Среда IDE выполнит фиксацию и сохранит моментальные снимки в репозитории. Во время выполнения действия фиксации отображается строка состояния среды IDE, находящаяся в интерфейсе справа внизу. После успешного завершения фиксации в окнах Проекты,Файлыи Избранное исчезают метки контроля версий и цветовое выделение фиксируемых файлов.
Работа с ветвями
Поскольку среда IDE поддерживает систему Git, появляется возможность использования ветвей для ведения различных версий всей базы кода.
При работе с ветвями в среде IDE поддерживаются следующие действия.
Чтобы, не оказывая влияния на основную ветвь, работать с отдельной версией своей файловой системы с целью стабилизации или экспериментирования, создайте локальную ветвь, выполнив для этого следующие действия.
В окне "Проекты" или "Файлы" выберите из репозитория проект или папку, в которой требуется создать ветвь.
В главном меню выберите "Группа > Git > Ветвь > Создать ветвь".
Примечание. Можно также щелкнуть правой кнопкой мыши проект или папку с контролем версий и во всплывающем меню выбрать "Git > Ветвь > Создать ветвь".
Откроется диалоговое окно "Создать ветвь".
В поле "Имя ветви" введите имя создаваемой ветви.
Введите конкретную редакцию выбранного элемента. Для этого введите в поле "Редакция" идентификатор фиксации, существующую ветвь или имя тега, или нажмите кнопку "Выбрать" для просмотра списка редакций, обслуживаемых в репозитории.
(Не обязательно) В диалоговом окне "Выбор редакции" раскройте "Ветви" и выберите требуемую ветвь; укажите идентификатор фиксации в соседнем списке и нажмите кнопку "Выбрать".
В полях "Идентификатор фиксации", "Автор", "Сообщение" просмотрите информацию, относящуюся к редакции, для которой создается ветвь, и щелкните "Создать".
Ветвь добавится в папку Ветви/Локальные репозитория Git.
Извлечение
Если требуется редактировать файлы в уже существующей ветви, можно извлечь ветвь для создания копий файлов в рабочем дереве.
Для извлечения редакции выполните следующие действия.
Чтобы указать требуемую редакцию, введите в поле "Редакция" идентификатор фиксации, существующую ветвь или имя тега, или же нажмите кнопку "Выбрать" для просмотра списка редакций, обслуживаемых в репозитории.
Пропустите этот шаг, если в предыдущем шаге не нажимали кнопку "Выбрать". В диалоговом окне "Выбор редакции" раскройте "Ветви" и выберите требуемую ветвь. Если требуется, в соседнем списке укажите идентификатор фиксации и нажмите кнопку "Выбрать".
Примечание. Если указанная редакция ссылается на допустимую фиксацию, не помеченную именем ветви, выполняется отсоединение HEAD, и вы больше не связаны ни с какой ветвью.
В полях "Идентификатор фиксации", "Автор", "Сообщение" просмотрите информацию, относящуюся к извлекаемой редакции.
Для создания новой ветви на основе извлеченной редакции выберите параметр "Извлечь в качестве новой ветви" и введите имя поле "Имя ветви".
Для извлечения редакции нажмите кнопку "Извлечь".
Файлы в рабочем дереве и в индексе обновляются в соответствии с версией из указанной редакции.
Примечание. Если требуется переключить файлы на уже существующую ветвь (например, на фиксацию, которая не находится наверху одной из ветвей), можно использовать команду "Группа > Git > Ветвь > Переключить на ветвь", указать ветвь в диалоговом окне "Переключение на выбранную ветвь", извлечь ее в качестве новой ветви (не обязательно) и нажать кнопку "Переключить".
В среде IDE поддерживается контекстно-зависимое извлечение файлов, папок и проектов, выбранных в текущий момент в среде IDE. Для извлечения нескольких файлов (не ветви) из индекса выполните следующие действия.
Выберите вариант "Обновить индекс записями из выбранной редакции".
При выборе этого варианта индекс обновляется в соответствии с состоянием из выбранной редакции, прежде чем выполнять свое извлечение. Это означает, что выбранные файлы обновляются как в рабочем дереве, так и в индексе.
Чтобы указать требуемую редакцию, введите в поле "Редакция" идентификатор фиксации, существующую ветвь или имя тега, или же нажмите кнопку "Выбрать" для просмотра списка редакций, обслуживаемых в репозитории.
Пропустите, если в предыдущем шаге не нажимали кнопку "Выбрать". В диалоговом окне "Выбор редакции" раскройте "Ветви" и выберите требуемую ветвь. В соседнем списке укажите номер редакции (если требуется) и нажмите кнопку "Выбрать".
Для завершения извлечения нажмите кнопку "Извлечь".
Слияние
Для переноса изменений из редакции репозитория в рабочее дерево выполните следующие действия.
Чтобы указать требуемую редакцию, введите в поле "Редакция" идентификатор фиксации, существующую ветвь или имя тега, или же нажмите кнопку "Выбрать" для просмотра списка редакций, обслуживаемых в репозитории.
Пропустите, если в предыдущем шаге не нажимали кнопку "Выбрать". В диалоговом окне "Выбор редакции" раскройте "Ветви" и выберите требуемую ветвь. Если требуется, в соседнем списке укажите идентификатор фиксации и нажмите кнопку "Выбрать".
Нажмите "Слияние".
Выполняется трехстороннее слияние текущей ветви, содержимого рабочего дерева и указанной ветви.
Примечание. В случае возникновения конфликта слияния конфликтующий файл помечается красной меткой.
Примечание. После слияния необходимо еще зафиксировать изменения, чтобы они были добавлены в HEAD.
Удаление ветви
Для удаления ненужной локальной ветви выполните следующие шаги.
В главном меню выберите "Группа > Git > Браузер репозитория".
В браузере репозитория Git выберите ветвь для удаления.
Примечание. Ветвь должна быть неактивной, т.е. в текущий момент она не должна быть извлечена в рабочее дерево.
Щелкните выбранную ветвь правой кнопкой мыши и во всплывающем меню выберите "Удалить ветвь".
В диалоговом окне "Удаление ветви" нажмите кнопку "ОК" для подтверждения удаления. Ветвь удаляется из локального репозитория и из обозревателя репозитория Git.
Работа с удаленными репозиториями
При работе совместно с другими разработчиками требуется обмениваться результатами работы. Это сопровождается загрузкой изменений (со слиянием с активной ветвью или без такового) из удаленных репозиториев, размещенных в сети или Интернете, выгрузкой изменений в них и помещением их в эти репозитории.
В процессе загрузки изменений из исходного удаленного репозитория доставляются те изменения, которых у вас еще нет. При этом никакие локальные ветви никогда не изменяются. В процессе загрузки изменений из удаленных репозиториев доставляются все ветви, которые можно слить с вашей ветвью или просто в любой момент проверить их.
Для загрузки обновлений выполните следующие действия.
Выберите "Группа > Git > Удаленный > Выборка".
Отображается мастер загрузки изменений из удаленного репозитория.
На странице мастера "Удаленный репозиторий" выберите репозиторий "Настроенный" (для использования настроенного ранее пути к репозиторию) или вариант "Указать местоположение репозитория Git" (чтобы определить путь к удаленному репозиторию, доступ к которому еще не осуществлялся, его имя, имя для входа, пароль и, если требуется, настройки прокси) и щелкните "Далее".
На странице мастера "Удаленные ветви" выберите ветви для загрузки из них изменений и щелкните "Готово".
Создается локальная копия удаленной ветви. Выбранная ветвь обновляется в каталоге Ветви > Удаленная в браузере репозитория Git.
Далее можно выполнить слияние выбранных обновлений в локальную ветвь.
Загрузка изменений со слиянием с активной ветвью
В процессе загрузки изменений со слиянием с активной ветвью обновлений из удаленного репозитория Git в нем осуществляется выборка изменений и выполняется их слияние в локальном HEAD локального репозитория.
Для осуществления загрузки изменений со слиянием с активной ветвью выполните следующие действия.
Выберите "Группа > Git > Удаленный > Вытянуть". Отображается мастер загрузки изменений из удаленного репозитория ос слиянием с активной ветвью.
На странице мастера "Удаленный репозиторий" выберите репозиторий "Настроенный" (для использования настроенного ранее пути к репозиторию) или вариант "Указать местоположение репозитория Git" (чтобы определить путь к удаленному репозиторию, доступ к которому еще не осуществлялся, его имя и, если требуется, имя для входа и пароль) и щелкните "Далее".
На странице мастера "Удаленные ветви" выберите ветви для загрузки из них изменений со слиянием с активной ветвью и нажмите кнопку "Готово".
Локальный репозиторий синхронизируется с исходным репозиторием.
Выгрузка изменений
Для внесения изменений из локального репозитория Git в общий репозиторий Git выполните следующие действия.
Выберите "Группа > Git > Удаленный > Выгрузка изменений".
Открывается мастер выталкивания в удаленный репозиторий.
На странице мастера "Удаленный репозиторий" выберите репозиторий "Настроенный" (для использования пути к репозиторию, настроенного ранее) или вариант "Указать местоположение репозитория Git" (чтобы определить путь к удаленному репозиторию, доступ к которому еще не осуществлялся, его имя и, если требуется, имя для входа и пароль) и щелкните "Далее".
На странице мастера "Выбор локальных ветвей" выберите ветви, в которые следует выгрузить изменения, и щелкните "Далее".
На странице "Обновление локальных ссылок" выберите ветви, которые требуется обновить в каталоге "Удаленные" локального репозитория, и нажмите кнопку "Готово".
Указанная ветвь удаленного репозитория обновляется с использованием последнего состояния локальной ветви.
Заключение
В данном учебном курсе показаны основные задачи контроля версий в среде IDE. Описана стандартная последовательность действий при использовании поддерживаемой средой IDE системы контроля версий GIT. Продемонстрирован способ настройки проекта с контролем версий и выполнения основных задач контроля версий файлов. Параллельно с этим дано представление о некоторых компонентах GIT, включенных в среду IDE.