Опыт участия в PHP (и других) Opensource проектах

161
06 ноября 2018, 03:30

Уважаемое сообщество, хотел бы узнать у вас как именно вы принимаете (если принимаете) участия в OpenSource?

Я хочу пояснить вопрос. Однажды один из ресурсов, который был использован одним из бандлов в Symfony, изменил API. Естественно что код стал работать не корректно и на моем ресурсе отвалилась авторизация.

Я порылся, нашел где проблема. Переопределил нужный сервис, внес свои правки. Ну и само собой решил что неплохо было бы предложить pull request вендору с правками данного сервиса.

Для этого мне пришлось стянуть в отельный проект бандл, туда сделать правки ну и отправить собственно тот самый запрос на изменение.

Вот и возникает вопрос. Работать таким образом с библиотеками совершенно не реально ибо библиотеки отдельно, а ваш проект отдельно (на самом деле реально, если работать через тесты) и вот в аккурат выливается вопрос кто то каким то образом имеет готовый рецепт работы со сторонними библиотеками одновременно работая со своим проектом ? Чтоб можно было бы не отходя от кассы комитить в нужные места нужные изменения ? Да и вообще, поделитесь пожалуйста опытом в этом направлении. Спасибо.

Answer 1

Не думаю, что вопрос специфичен для php. Мы, когда работаем в Unity3d тоже разные библиотеки/плагины используем. Думаю, в целом везде +- одинаково.

Думаю, в штуках вроде node.js/php и можно было бы настроить локальные зависимости так, чтоб можно было удобно пулл реквесты посылать, но, в любому случае, вам перед этим придётся форкать оригинальный репозиторий.

Так что, механизм в целом похож:

  1. Вы используете модуль/библиотеку.
  2. Если всё хорошо, то всё хорошо (:
  3. Если что-то сломалось
    1. Форкаете оригинальный модуль/библиотеку.
    2. Правите там всё, что надо.
    3. Пушите в свой форк и отправляете пул реквест.
    4. Собираете модуль/библиотеку (если надо) и подключаете к проекту как локальную зависимость.
    5. Если ваш пулреквест примут, то можете снова переключиться на удалённый репозиторий.

В случае с php, я не знаю, что там сейчас модно. composer? Там вроде есть возможность подключать локальные пакеты. Так что, часть зависимостей у вас будет по старинке из удалённых реп, а часть зависимостей на локальные пакеты.

READ ALSO
Помощь с выводом таблицы в реальном времени и проверки значений

Помощь с выводом таблицы в реальном времени и проверки значений

Очень нужна помощь и советы по реализацииИмеется административная панель с одной таблицей, с выводом последних 60 строк из MySQL базы

203
Как перекодировать данные из базы при выводе

Как перекодировать данные из базы при выводе

У меня в php базе данных,хранится информация в таком виде:

168
Laravel - отладка во view

Laravel - отладка во view

Пытаюсь приноровиться к laravel после ZendВцелом, многие вещи сделаны легко и симпатично

149
PHP, PDO, как импортировать файл CSV в MYSQL?

PHP, PDO, как импортировать файл CSV в MYSQL?

В форме добавляю файл и нужно вставить данные в базу данных, вроде всё делаю правильно, но ни ошибку не получаю, ни БД не обновляетсяВот скрипт

186