Это основной рабочий процесс git?

Я некоторое время изучаю git, но впервые собираюсь применить то, что узнаю, на настоящей работе программиста. Я знаю только то, что делают некоторые команды git, но не знаю, что мы будем делать с ними в реальном рабочем процессе, так что мое видение верно:

Начиная:

  • Мы разветвим репозиторий на наш GitHub
  • Мы будем клонировать на нашей локальной машине

Разработка проекта:

  • Мы будем создавать новую ветку каждый раз, когда нам нужно добавить новую функцию.
  • Когда мы уверены, что функция завершена и не сломана, мы объединяем эту ветку с master
  • Мы создаем запрос на включение, объясняющий, что мы добавляем.

это правильно?

Да, но "сливаем эту ветку" не к месту. Слияние является кульминацией запроса на извлечение. Вы делаете запрос на включение, и если он проходит проверку, он объединяется.

matt 22.12.2020 00:31

Если вы являетесь частью команды, было бы неплохо обсудить это с ними. Некоторые рабочие процессы зависят от проекта/команды. Например, разветвляя репозиторий, а затем клонируя его, иногда вы можете просто клонировать его напрямую. Или создайте ветки релиза перед слиянием. Есть много вариаций.

Gino Mempin 22.12.2020 01:58
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
2
54
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

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

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

Также смотрите https://git-scm.com/book/en/v2/Git-Branching-Branching-Workflows

Я бы сделал что-то подобное...

Начиная:

  1. Мы разветвим репозиторий на наш GitHub

  2. Мы будем клонировать на нашей локальной машине

  3. Добавьте удаленный «восходящий поток» к разветвленному репо, чтобы иметь возможность синхронизации (fetch)

Разработка проекта:

  1. Мы будем создавать новую ветку каждый раз, когда нам нужно добавить новую функцию.

  2. Создайте хотя бы 1 коммит

  3. Мы создаем пул реквест, объясняющий, что мы добавляем на ранней стадии разработки, чтобы собрать отзывы.

  4. Итерация: обсуждайте, просматривайте и добавляйте новые коммиты, при необходимости синхронизируйте с исходным кодом (в большинстве случаев с помощью rebase). Сделайте этот шаг столько раз, сколько это необходимо

  5. Необязательно: вышестоящий проект, вероятно, попросит вас очистить историю, удалив некоторые или все коммиты (после финальной проверки).

  6. Запрос на включение будет объединен мейнтейнером, когда он посчитает, что PR хорошего качества.

Другие вопросы по теме