Найти в Дзене
Властелин машин

Как безопасно изменять проект

Оглавление

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

В демонстрационных целях клонируем в локальную папку любой проект с Github и внесем изменения в его файл. На рисунке ниже модифицирован item_parser.py:

Сохраним новую версию программы с помощью git commit -am 'сообщение' (подробнее о настройках проектах с помощью GIt читай здесь, а о полезных командах этой системы управления версиями здесь):

-2

Переключение

Простой способ визуализации сохраненных версий предоставляют среды разработки PyCharm и Spyder.

Spyder

Для взаимодействия с Git через Spyder потребуется установить графический инструмент gitk (в Linux - sudo apt install gitk). Впоследствии, нажав правой кнопкой мыши на один из файлов проекта и выбрав "Browse repository", вызовем меню gitk:

-3

-4

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

Если выбрать последний снимок, то в панели изменений указано название модифицированного файла (item_parser.py), а минусами и плюсами отмечены строки, присутствовавшие до и после изменений. Как можно заметить, модификации связаны с комментированием отдельных строк:

-5

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

-6

Например, я создал в предпоследнем снимке ветку "no_comments". Нажав на нее, можно выбрать "Перейти на ветку" и комментарии в файле item_parser.py будут удалены (так как этот снимок отличался о последнего именно этим). Если захотите вернуться на последний снимок, совершите аналогичные действия.

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

-7

-8

PyCharm

Для совершения аналогичных действий в PyCharm потребуется активировать панель Git в левом нижнем углу:

-9

Здесь можно увидеть информацию обо всех сохраненных снимках с указанием текущего положения ветки локальной (в данном случае master) и серверной (origin/master).

Создадим ветку от снимка win. Выделяем его, жмем правой кнопкой мыши и выбираем "New Branch" , затем даем имя и щелкаем по "Create":

-10

Для переключения между ветками выбираем нужную в левой панели и жмем "Checkout":

-11

-12