Работа с Git для начинающих

Git — чрезвычайно мощный и полезный инструмент. Это позволяет нам управлять выпусками, разрабатывать функции, исправлять ошибки и сохранять нашу работу с максимальной эффективностью. В этом посте я решил поделиться своим рабочим процессом git. Я принял рабочий процесс gitflow, поэтому некоторым из вас он может показаться знакомым. Вы можете найти руководство по Gitflow от Atlassian. здесь.

Этот пост написан для пользователей Mac, но и другие пользователи могут найти его полезным.

Настройка нашего рабочего процесса

Прежде чем начать наш рабочий процесс, нам нужно настроить наши ветки. Нам нужны две основные ветки:

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

cd [your project directory]

Затем введите следующие две команды.

git checkout -b develop	# Creates a new branch named develop
git checkout -b master	# Creates a new branch named master

Введите следующее, чтобы перечислить ветки, которые вы только что создали.

git branch # Lists all your git branches

Ваши филиалы будут перечислены, как показано ниже. Любые другие созданные вами ветки также будут перечислены здесь.

Скриншот 2019-04-19 в 10.30.52.png

Название ветки разработки говорит само за себя. Он используется для разработки вашего проекта. Разработка происходит путем слияния ваших веток функций в develop. Ветка master используется для хранения состояния выпущенного кода. Это позволяет нам выполнять такие задачи, как исправления (подробнее об этом позже). Вам следует избегать разработки в ветке master.

Функции ветвления и слияния

Теперь, когда наши две основные ветки созданы, пришло время приступить к работе. Как правило, мы хотим создать для этого ветку функций. Находясь в каталоге проекта, введите:

git checkout develop		# Change to your develop branch
git checkout -b myfeaturebranch	# Create a new branch from the develop branch

Теперь, когда ваша функциональная ветка создана, не стесняйтесь работать над тем, что вам нужно.

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

Чтобы начать слияние, введите в терминал следующее.

git commit -m "record your commit message here"	# commit your changes
git checkout develop			# Change to your develop branch
git merge myfeaturebranch 		# Merge myfeaturebranch changes into develop

Затем вы получите уведомление в терминале о том, было ли слияние успешным. Если все прошло успешно, поздравляем, вы успешно объединили свою ветку.

Создание релиза и отправка на удаленку

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

Создать ветку релиза

git checkout -b release[version#]

Затем выполните любые изменения версии в этой ветке, зафиксируйте свои изменения и объедините их с ветками разработки и мастера.

git commit -m "record your commit message here"	# commit your changes
git checkout develop		# Change to your develop branch
git merge release[version#]	# Merge release[version#] changes into develop
git checkout master		# Change to your master branch
git merge release[version#]	# Merge release[version#] changes into develop

Затем переместите свои ветки на удаленный

git checkout develop	# Changes to your develop branch
git pull		# It's best practice to always pull your
git push		# repository before you push
git checkout master	# Change to your master branch
git pull		# It's best practice to always pull your
git push		# repository before you push

Наконец, создайте и загрузите свою сборку

git checkout master	# Change to your master branch
# Create and upload you build from the master branch

Исправления

Вы запустили сборку и выпустили ее для всего мира. Уже на следующий день вы получаете сообщение о том, что важная функция не работает. Ты должен исправить это вчера. Поскольку вы загрузили свою сборку из ветки master, вы абсолютно точно знаете, что с момента загрузки ничего не изменилось. Вот тут-то и появляются исправления. Чтобы создать исправление, нам нужно создать новую ветку из master, выполнить исправление ошибки в этой ветке и объединить эту ветку обратно в master и разработать. Затем мы создаем новую сборку и выпускаем ее. Вот рабочий процесс ниже.

git checkout master		# Change to your master branch
git checkout -b hotfixbranch	# Create your hotfix branch

Выполните исправление ошибки в ветке hotfixbranch, а затем объединитесь обратно в ветки development и master.

git checkout hotfixbranch	# Change to your hotfix branch
git commit -m "record your commit message here"	# commit your changes
git checkout master		# Change to your master branch
git merge hotfixbranch		# Merge the hotfix branch
git checkout develop		# Change to your master branch
git merge hotfixbranch		# Merge the hotfix branch

Отправьте свои изменения на удаленный.

git checkout develop	# Changes to your develop branch
git pull		# It's best practice to always pull your
git push		# repository before you push
git checkout master	# Change to your master branch
git pull		# It's best practice to always pull your
git push		# repository before you push

Создайте и загрузите исправление ошибки.

git checkout master	# Change to your master branch
# Create and upload you build from the master branch

Вывод

Git — замечательный инструмент. Это позволяет повысить организованность и эффективность при разработке приложений. Он даже позволяет быстро и надежно исправлять ошибки. В этом руководстве объясняется, как использовать базовый рабочий процесс git, предполагая, что слияние происходит безупречно. Чтобы узнать, как справляться с конфликтами слияния, следите за обновлениями!

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *