Контроль версий

Git - распределенная система версионирования с широкими функциональными возможностями. Полную информацию о возможностях git, его принципах и работе с этой системой можно найти здесь.

Для управления сохранением версий исходных кодов в состав Студии входит минимально необходимый набор инструментов для работы с хранилищем (репозиторием) git, представленный в соответствующем тематическом подменю Git главного окна.

До того, как пользователь откроет какой-либо проект, пункты подменю Git не будут выполнять каких-либо полезных действий.

При открытии проекта подменю Git изменится в зависимости от того, имеется ли у открытого проекта git-хранилище (репозиторий) или нет.

Если у проекта нет git-хранилища, то подменю Git будет выглядеть следующим образом:

Если у проекта уже имеется git-хранилище, то подменю Git будет таким:

В случае, если у проекта хранилища еще нет, для дальнейшей работы с git придется его создать.

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

В первом случае, достаточно выбрать пункт меню "Создать репозиторий" и выбрать путь к хранилищу. Внимание: Настоятельно рекомендуется выбирать папку с проектом в качестве папки размещения хранилища: несмотря на возможность указать любую папку для размещения хранилища на данный момент, при указании какой-либо иной папки git может работать некорректно.

Если необходимо создать хранилище, синхронизируемое со своей удаленной копией, то желательно проделать следующую последовательность шагов для корректной работы с хранилищем:

  • Создать удаленную пустую копию (bare) будущего локального хранилища;

  • Произвести клонирование удаленной пустой копии локального хранилища в папку с проектом, открытым на данный момент (Git -> Клонировать проект);

  • Произвести сохранение первых изменений (коммит) с выбором кнопки "Сохранить и отправить";

  • Переоткрыть проект.

После создания/настройки репозитория для проекта можно пользоваться остальным имеющимся функционалом для работы с git.

Функциональные возможности

Для сохранения версии в локальном хранилище git выберите пункт меню "Сохранить изменения".

Кнопка "Сохранить" зафиксирует изменения в локальном хранилище git. Кнопка "Сохранить и отправить" вызовет также диалоговое окно настройки удаленных хранилищ git для текущего проекта (Git, GitHub, TFS и т.д.)

Нажмите на кнопку "+", чтобы сконфигурировать и добавить необходимое удаленное хранилище.

Внимание! Для работы с хранилищем Azure необходимо включить альтернативный способ авторизации.

При отправке возможны конфликты состояния локального и удаленного репозитория (соответствующих веток (branch)) с предложением их разрешения, о которых предупредит соответствующее диалоговое окно.

При выборе варианта "Перезаписать удаленную", версия удаленного репозитория будет заменена на локальную (фактически, push -force). При выборе варианта "Загрузить изменения" git попытается объединить (merge) удаленную и локальную версии. При наличии неразрешимых конфликтов будет представлен диалог объединения изменений, в котором необходимо определить, какие версии (локальная или удаленная) будут использованы в дальнейшем.

Для выбора версии выделите обрабатываемый процесс и нажмите кнопку "Применить удаленный" либо "Применить локальный" в верхней части окна. После устранения всех конфликтов, нужно нажать кнопку "Сохранить". После завершения всех операций, хранилища необходимо повторно синхронизировать через кнопку "Сохранить и отправить".

Пункт меню "Отменить изменения" позволяет отменить последние изменения (эквивалентно hard-reset на предыдущую версию/фиксацию (commit)).

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

Для сравнения локальной версии с репозиторием, нажмите правой кнопкой на файле в палитре Проект и выберите меню "Показать изменения"

Пункт меню "Управление версиями" подменю Git служит для отката к определенной сохраненной версии (эквивалентно hard-reset на выбранную версию). Для этого выберите нужную версию, нажмите на ней правой кнопкой мыши и нажмите "Использовать".

Пункт меню "Ветви" подменю Git служит для управления ветвями хранилища git. Для создания ветви нажмите кнопку "+", для удаления выбранной ветви, кнопку "-". Для управления состояниями ветвей выберите нужную ветвь, нажмите на ней правой кнопкой мыши и выберите в меню "Выбрать ветвь (Checkout)", "Перенести ветвь (Rebase)" либо "Объединить ветвь (Merge)".

При выборе в подменю Git пункта меню "Отсоединить" произойдет разрыв связи с удаленным репозиторием.

Last updated