Блог им. fininja

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

    • 05 февраля 2024, 17:51
    • |
    • Fininja
  • Еще
Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)
Рис. 1: Медленно положи свой код на пол и пни ко мне!

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

Первый шаг — на Гитхабе делаем форк проекта (https://github.com/AlexWan/OsEngine). Для этого нажимаем Fork:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

И «Create Fork» на следующем экране:
Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

В результате в твоем аккаунте появится копия репозитория проекта. В моем случае — github.com/nikitabuida/OsEngine. Далее будем называть этот репозиторий форком.

Теперь нужно скачать этот форк на локальную машину и внести изменения в проект.

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

Скачиваем код форка. Показываю на примере командной строки, но это же самое можно сделать при помощи любого удобного клиента Git:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)


В результате этой команды весь код форка будет скачан в директорию C:\code\OsEngine-FORK.
Скачивание занимает какое-то время:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

Теперь вносим наши изменения в код, который скачали. Здесь подробно не буду останавливаться. Можно просто открыть проект в редакторе и исправить или скопировать готовые файлы, если исправления вносились где-то еще.

Показываю на примере исправления проскальзывания в авто-тестах серверов коннекторов.


Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

Внес изменения в 4 файла.

Делаем коммит git commit -am «комментарий» :

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

И отправляем внесенные изменения в форк:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

Теперь на Гитхабе наш форк отображается как на один коммит опережающий основной репозиторий. Нажимаем «Contribute»:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)
И далее — жмем «open pull request»:


Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)


На следующем экране отобразятся все вносимые в основной проект изменения. Жмем «Create pull request»:

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)


И еще раз, такую же кнопку на следующем экране:


Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)

Поздравляю! Pull request создан. Теперь остается дождаться пока владелец репозитория включит (или нет) ваши изменения в основной репозиторий.

Как прислать изменения в проект с открытым исходным кодом (на примере OsEngine)


В любом случае информация о судьбе изменений придет на почту.

Если включены, то вечная слава и уважение сообщества тебе, программист!


★6
7 комментариев

котик на моего похож.

тема странная для сайта )

зашел на смарт отдохнуть от кода и прочей литературы, а тут на тебе, личинка хабра.

avatar
Тестер, да, алгаши и сюда свой код да Гитхаб затащили, сорян (:
avatar
О, Великий Ван, только на тебя уповаем! А старые ошибки уже пофиксены?
avatar
T-800, Делов не знаю.
45 человек над проектом работают. 
Если где-то ошибки — это виноваты чуваки со СмартЛаба. Я пишу идеальный код)
T-800, Ну и без шуток.

А то сейчас все решат что я отшучиваюсь.

Всё в наших руках! 

Помог OsEngine пофиксить Баг = спас кота. 
А через Visual Studio разве не удобнее? Зачем командная строка?
avatar
CatM8, через нее обычно быстрее. А так кому что нравится.
avatar

теги блога Fininja

....все тэги



UPDONW
Новый дизайн