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

Лучший рабочий процесс при разветвлении и переименовании проекта GitHub

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

  • Уметь переносить изменения из своего публичного репо на новый порт андроида при обновлении исходного кода.
  • Уметь удалять изменения (через запросы на pull) в исходный проект, когда я исправляю ошибки, которые не только применимы к порту android.
  • У вас есть отдельная переименованная версия проекта, чтобы было ясно, что это порт Android. Я посмотрел на переименование вилки, и Гитуб дал мне огромные предупреждения об этом.

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

original-author/projectA
nicstrong/projectA
nicstrong/projectA-android

Это позволило бы мне работать с локальными локальными репо/projectA-андроидными изменениями на nicstrong/projectA-android. Затем, чтобы обновить исходный проект, я мог бы переконфигурировать nicstrong/projectA до последней версии от оригинала-автора/projectA, а затем извлечь/слить из nicstrong/projectA в local/projectA-android.

Мои вопросы:

  • Я совершенно новый для всего Git вещь. Кажется ли это хорошим подход? Или есть лучше рабочий процесс для обработки этого scenerio?
  • Как я буду обрабатывать нажатие projectA-android обратно в nicstrong/projectA, чтобы я мог настроить запрос на тягу для исходного проекта?
4b9b3361

Ответ 1

1/Да, это самый безопасный подход, так как любая модификация, которую вы заканчиваете обратно-переносить в nicstrong/projectA, будет в проекте с той же структурой, что и original-author/projectA.
Это означает, что запросы на загрузку будут проще организовать, так как вы будете в проекте, отражающем исходный авторский проект.

2/Если у вас массивный рефакторинг происходит в nicstrong/projectA-android, я бы сделал ветвь backport, тщательно объединил или вишнёв, чтобы выбрать то, что вам нужно, от многочисленных изменений в ветке backport, а затем нажмите ветвь до nicstrong/projectA.
(это означает, что вы добавили nicstrong/projectA в качестве удаленного устройства nicstrong/projectA-android)

Ответ 2

Название репозитория git сильно зависит от имени пульта. Идите и клонируйте его, а затем просто добавьте новый пульт (другим именем) и начните нажимать туда. В этот момент, конечно, вы можете продолжить и изменить название каталога проекта без проблем.