Рабочий процесс Git: создание проекта и поддержка локальной измененной копии, но в курсе

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

  1. Форк проект (github.com/moodle/moodle -> github.com/sfu/moodle)
  2. Создать восходящий удаленный (git remote добавить восходящий git://github.com/moodle/moodle.git && git fetch upstream)
  3. Создайте ветку для нашей нестандартной разработки и сохраняйте мастерскую чистоту.
  4. Когда мы хотим обновить наш форк, обновите нетронутую ветвь (мастер git checkout && git fetch upstream && git merge upstream/master)
  5. Мастер слияния в нашу ветку настроек (git checkout custom && git master merge)

Имеет ли это смысл?

2 ответа

Решение

Да, это имеет смысл. Хотя шаг № 4 можно немного упростить до git checkout master && git pull --ff-only upstream master,

--ff-only гарантирует, что вы не получите коммитов слияния в вашей первоначальной копии.

Имеет смысл

... и если хотите, сравните с библией:

успешная модель git-ветвления

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