Подтвердить что ты не робот

Рабочий процесс Github для одного разработчика

Мне хотелось бы получить отклик на рабочий процесс git, потому что это мое первое его использование и, несмотря на чтение различных статей и вопросов, я не уверен, что мой процесс верен. Это мой текущий рабочий процесс (обратите внимание, что я использую приложение Github для Windows для всех моих взаимодействий git):

  • Решите, что следующая функция, которую я собираюсь реализовать.
  • Создайте ветвь с подходящим описательным именем для этой функции. Я делаю это, нажимая на кнопку ветки в Github для Windows и введя новое имя.
  • Введите код.
  • Зафиксируйте эти изменения в моей новой ветке.
  • Напишите еще один код.
  • Зафиксируйте эти изменения в моей новой ветке.
  • Я закончил реализацию функции, поэтому хочу объединить свои изменения обратно в главную ветку. Поэтому я нажимаю кнопку "управлять" под заголовком ветки.
  • Слейте новую ветку в главную ветку.
  • Удалить новую ветку.

Я доволен процессом вплоть до шага 7, после которого я немного запутался. Я думаю, что моя путаница заключается в том, что я пытаюсь использовать приложение Github для Windows, а не использовать командную строку. Похоже, что приложение упрощает работу, но в некоторых отношениях есть некоторые проблемы, связанные с некоторыми командами/инструкциями, которые я вижу, и действия, которые вы должны предпринять в приложении.

Позвольте мне задать некоторые конкретные вопросы:

  • Действительно ли мой рабочий процесс правильный? Если нет, что с ним не так и как я могу его улучшить?
  • Должен ли я публиковать мои изменения в новом филиале? Я понимаю, что это эквивалентно выполнению git push в командной строке. Это правда? Если это так, я думаю, что я только хотел бы сделать это, когда я либо закончу реализацию функции, либо находится в приличном состоянии?
  • Должен ли я удалять ветку, когда я объединил ее в ведущую ветку или должен ли она оставаться навсегда?
  • Нужно ли мне публиковать ветвь мастера, когда я завершил слияние или это неявно?
  • Иногда мне не удается выполнить слияние и получить это сообщение об ошибке:

    Невозможно объединить

    Не удалось слить 'test' в 'master'. Возможно, вам придется открыть оболочку и отладить состояние этого репо.

Когда это произошло раньше, я смог перейти на главную ветвь и объединить новую ветку в главную ветку, но это больше не работает. Независимо от того, в какой ветки я вхожу, я не могу объединить две ветки. Оба синхронизированы, и я опубликовал все изменения в моей тестовой ветке. Что я должен вводить в оболочку, чтобы узнать, почему я не могу объединить ветки?

Для справки, это основные ссылки, которые вызвали мой процесс:

4b9b3361

Ответ 1

То, что вы описываете, звучит как обычный ветвящийся рабочий процесс, который очень хорошо работает даже для нескольких разработчиков на одной базе кода. Это полностью полностью покрывается git flow, который является расширением командной строки git для автоматизации определенных шагов. Это стоит проверить.

Я не большой поклонник инструментов пользовательского интерфейса для git. Я использую командную строку большую часть времени. Поэтому я не испытываю проблем с GitHub для Windows. Но я уверен, что ваши проблемы возникают из-за того, что ваши слияния больше не ускоряются. Для этого потребуется ручной шаг слияния, который (афайк) не покрывается инструментом.

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

Вам нужно будет опубликовать (нажать) свою основную ветку после слияния.

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

Надеюсь, что поможет