Изменение рабочей копии#
Проект исходного кода (или рабочая копия программы) состоит из сгруппированных по каталогам файлов. В файлах размещены исходные коды программы, инструкции по сборке, документация, настройки, тестовые данные и другая информация. Программа непрерывно улучшается за счет изменения исходных кодов. По уровню важности, изменения в программе нацелены на:
исправление ошибок в системе безопасности;
исправление ошибок (багфикс);
реализацию новой функции;
улучшение производительности;
рефакторинг – улучшение исходного кода без изменения поведения программы.
С точки зрения файлов разработка программы выглядит как редактирование файлов и состояния файловой системы. Также полезно увидеть, что именно изменилось в сравнении с исходным состоянием файлов. Эти вопросы будут рассмотрены ниже.
Редактирование файла происходит в любом текстовом редакторе. Для работы с файловой системой мы можем воспользоваться следующими командами из терминала:
mkdirсоздает новый каталог;touchсоздаст новый пустой файл;rmудалит файл и каталог, но с опцией-r;cp <from> <to>скопирует файл или каталог, но с опцией-r;mv <from> <to>переименует или переместит файл.chmod +x <file>установит атрибут “исполнимый файл” и сбросит атрибут, но с опцией-x.
Те же самые действия можно выполнить в IDE, как например VSCode.
Команда git diff сравнивает измененные файлы в рабочей копии с зафиксированными и отображает патч на экране терминала.
Тот же самый патч можно просмотреть в другой интерактивной программе.
Команда git difftool --tool-help покажет список доступных инструментов для просмотра изменений.
Вы может выбрать любой из них опцией --tool:
git difftool --tool=kdiff3
git difftool --tool=vimdiff