Для того чтобы создать свой локальный репозиторий, необходимо выбрать необходимую директорию через команду cd
"адрес директории", после чего ввести git init
, после чего все другие команды git (такие как add
, commit
, branch
и т.д.) начнут опозноваться и выполняться. После можно спокойно работать с имеющимися файлами в репозитории (вашей папке) и записывать их изменения через commit -m "Название сохранения"
, сохраняя их в log
.
Во время разработки новой функциональности считается хорошей практикой работать с копией оригинального проекта, которую называют веткой. Ветки имеют свою собственную историю и изолированные друг от друга изменения до тех пор, пока вы не решаете слить изменения вместе. Это происходит по набору причин:
- Уже рабочая, стабильная версия кода сохраняется.
- Различные новые функции могут разрабатываться параллельно разными программистами.
- Разработчики могут работать с собственными ветками без риска, что кодовая база поменяется из-за чужих изменений.
- В случае сомнений, различные реализации одной и той же идеи могут быть разработаны в разных ветках и затем сравниваться. Команды для работы с ветками:
- git branch - просмотр существующих веток в репозитории
- git branch name_branch - создание новой ветки в репозитории. можно создавать ветку в ветке.
- git checkout -b name_branch - создание новой ветки и автоматический переход в неё
- git checkout name_branch - переход в ветку name_branch
- git branch -d - удаление "слитой" ветки
- git branch -D - удаление любой ветки
- git log --graph - отображение коммитов в виде дерева веток
- git merge name_branch - слияние текущей ветки и ветки name_branch. При различном содержании могут возникать конфликты, которые git может разрешить самостоятельно, но может понадобиться участие пользователя для выбора источника вносимых изменений
- Ветки позволяют командам разработчиков без труда вести совместную работу с одной централизованной базой кода.
- Когда разработчик создает ветку, система контроля версий создает копию базы кода, актуальную на текущий момент времени. Изменения ветки не влияют на работу других разработчиков в команде.
Ветки позволяют командам разработчиков без труда вести совместную работу с одной централизованной базой кода. Когда разработчик создает ветку, система контроля версий создает копию базы кода, актуальную на текущий момент времени. Изменения ветки не влияют на работу других разработчиков в команде. Это, конечно же, хорошо, потому что разработка функциональных возможностей сопряжена с постоянными изменениями, и если бы вся работа велась в главной ветке, процесс разработки погрузился бы в хаос. Но ветки не должны существовать в полной изоляции. Разработчики могут без труда запрашивать изменения у других разработчиков, чтобы вместе работать над функциональностью и не допускать слишком сильного отклонения их собственной ветки от главной.