Вчера я работал над проектом API на Rails 5, который использует библиотеку actions-as-taggable-on, чтобы вещи могли иметь теги (например, вопросы по SE). Rails 5 сейчас находится в альфа-поддержке. В настоящее время существует PR, чтобы исправить ошибку, ожидающую слияния с мастером; ошибка привела к тому, что моя функциональная ветвь остановилась на полпути к завершению - я не мог реализовать какую-либо функциональность библиотеки, потому что загрузка была прервана.
В качестве быстрого исправления я просто клонировал репозиторий, исправил проблему с тем же кодом, что и PR, и указал мой Gemfile (файл управления версиями зависимостей) на мой собственный форк Github, пока исправление не было окончательно слито обратно в master.
Мне повезло, что решение было простым ( и что кто-то уже сделал это ), поэтому я смог обойти эту проблему. Но что, если эта библиотека имеет решающее значение для разработки моего приложения? Что, если исправление, которое останавливало мою разработку, не было широко распространенной проблемой для других людей , поэтому исправление появилось не так быстро, как в этот раз?
Представьте, что эту функцию нужно было завершить до разработки других зависимых функций - что вы делаете в этой ситуации? Что, если для меня тегирование было абсолютно критическим для следующей фразы разработки, где все остальное полагалось на нее - но зависимость тегирования прослушивается для моей конфигурации? Что делать, когда критическая функциональность зависимости мешает разработке (а) функции (ий)?
И, конечно же, бои на мечах на офисных креслах в течение нескольких часов или дней не вариант ...