Как правильно форкать проект для основы своего?

Добрый день.

На гитхабе есть репа (чужая). На базе этого проекта я хочу сделать подобный ему, но с серьезно измененной логикой. Эти изменения обратно пулреквестом отправить нельзя т.к. они конфликтуют с оригинальной логикой. Данный проект будет так же отдельным пакетом для композера.

Как правильно будет форкнуть этот проект так, чтобы работая с этим форком, я через другой мог продолжать контрибьютить с оригинальный проект? Можно тупо скопировать код и залить как отдельную (новую) репу, но из уважения к автору хочется что бы было видно, что мой проект основан на его.

Как это вообще принято/делается на гитхабе?

UPD:
Я видимо не совсем ясно описал проблему. Мне нужно два форка оригинального репозитория: первый для своего проекта, второй для возможности контрибьютить в оригинальный и помогать в его развитии. Из первого контрибьютить не получится т.к. он сильно отличается оторигинала. А два форка гитхиаб не дает делать.
Я могу тупо два раза склонировать репу на комп. Вопрос в том, как это организовать на гитхабе?
  • Вопрос задан
  • 10190 просмотров
Пригласить эксперта
Ответы на вопрос 5
@FoxInSox
Инструкция по единственно правильному методу:
1. Нажмите кнопку Fork:63c3075b9f6d4bd7ada8406ea62cd9e5.png
2. Вы успешно и правильно сделали форк проекта. Конец инструкции.
Ответ написан
Комментировать
mannaro
@mannaro
Умею профессионально гуглить
Я думаю, что, если код уж будет так сильно отличаться, то нужно залить репу как новую, а в README указать, на чем основано.

P.S: также, форки не отображаются в поиске по гитхабу, так что делать форк в этом случае не разумно.
Ответ написан
Sly_tom_cat
@Sly_tom_cat
.
Делаете форк, и работаете с ним независимо, оригинальный держите в другой копии. Переключаетесь через git checkout.

Даже не совсем понял в чем собственно вопрос....
Ответ написан
Комментировать
Создавать свой репозиторий оправдано в случае когда код пишется с нуля. При этом в README указывается откуда была взята исходная идея.
В остальных случаях создаётся клон и поэтапно доводится до нужного состояния. В промежуточном состоянии старые файлы и папки могут быть перемещены в папку, скажем, obsolete. А в случае необходимости перемещены на прежнее место (по аналогии с Корзиной в ОС).
Ответ написан
Комментировать
uvelichitel
@uvelichitel
habrahabr.ru/users/uvelichitel
Это еще называется порт. Вы регулярно синкаете (насколько возможно) локальный репо на разраб машине с мастером первоисточника, чтобы не упустить коммиты оригинальной ветви и , что смержилось пушите в свой репо. У вашего локального репо разработки две удаленных головы. Ну, то есть я так делаю https://github.com/uvelichitel/plan9port
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы