Мне хотелось бы получить отклик на рабочий процесс git, потому что это мое первое его использование и, несмотря на чтение различных статей и вопросов, я не уверен, что мой процесс верен. Это мой текущий рабочий процесс (обратите внимание, что я использую приложение Github для Windows для всех моих взаимодействий git):
- Решите, что следующая функция, которую я собираюсь реализовать.
- Создайте ветвь с подходящим описательным именем для этой функции. Я делаю это, нажимая на кнопку ветки в Github для Windows и введя новое имя.
- Введите код.
- Зафиксируйте эти изменения в моей новой ветке.
- Напишите еще один код.
- Зафиксируйте эти изменения в моей новой ветке.
- Я закончил реализацию функции, поэтому хочу объединить свои изменения обратно в главную ветку. Поэтому я нажимаю кнопку "управлять" под заголовком ветки.
- Слейте новую ветку в главную ветку.
- Удалить новую ветку.
Я доволен процессом вплоть до шага 7, после которого я немного запутался. Я думаю, что моя путаница заключается в том, что я пытаюсь использовать приложение Github для Windows, а не использовать командную строку. Похоже, что приложение упрощает работу, но в некоторых отношениях есть некоторые проблемы, связанные с некоторыми командами/инструкциями, которые я вижу, и действия, которые вы должны предпринять в приложении.
Позвольте мне задать некоторые конкретные вопросы:
- Действительно ли мой рабочий процесс правильный? Если нет, что с ним не так и как я могу его улучшить?
- Должен ли я публиковать мои изменения в новом филиале? Я понимаю, что это эквивалентно выполнению
git push
в командной строке. Это правда? Если это так, я думаю, что я только хотел бы сделать это, когда я либо закончу реализацию функции, либо находится в приличном состоянии? - Должен ли я удалять ветку, когда я объединил ее в ведущую ветку или должен ли она оставаться навсегда?
- Нужно ли мне публиковать ветвь мастера, когда я завершил слияние или это неявно?
- Иногда мне не удается выполнить слияние и получить это сообщение об ошибке:
Невозможно объединить
Не удалось слить 'test' в 'master'. Возможно, вам придется открыть оболочку и отладить состояние этого репо.
Когда это произошло раньше, я смог перейти на главную ветвь и объединить новую ветку в главную ветку, но это больше не работает. Независимо от того, в какой ветки я вхожу, я не могу объединить две ветки. Оба синхронизированы, и я опубликовал все изменения в моей тестовой ветке. Что я должен вводить в оболочку, чтобы узнать, почему я не могу объединить ветки?
Для справки, это основные ссылки, которые вызвали мой процесс: