[userpic]

Svn: репозиторий и рабочая копия? 

ex_andrusha743 в посте Openmeta (оригинал в ЖЖ)

В продолжении метафоры, хочу добавить ещё одно понятие репозитория. Как в системе управления версиями, subversion нампример. У нас есть репозиторий кода, из него можно сделать checkout т.н. рабочей копии. Части актуального кода. Одной ветки. Сделать копию основной ветки, поработать над ней, и, возможно, слить с основной векткой в более или менее далёком будущем (branches). Отфиксировать текущее состояние (tags). Вытащить только небольшой кусочек кода (плагин) и работать только с ним, ни сколько не заботясь о целостности остального кода.
В этом смысле, мы имеем конструкцию «репозиотрий – рабочая копия», специально ориентированное на разработчика, дизайнера, писателя, евангелиста и т.д., предполагающую и стимулирующую вклад от участника. При том, что существует большое число энтузиастов-пользователей, стремящихся жить on the edge, читающие лог изменений, поддерживая свою рабочую копию постоянно в свежем виде. Отсюда прямая и быстрая дорога к включению такого энтузиаста в общий процесс разработки, рекрутинга интересующегося продвинутого пользователя в активного контрибьютора.
В то время, как «Репозиторий (пакетов) – Дистрибутив» – это как раз механизм выпуска конечного продукта, для конечного пользователя. Кроме собственно сборки пакетов, построенных из отфискированного на некоторый момент кода (доступного из того же subversion оригинального разработчика), предполагается поддержание механизмов отслеживания зависимостей, автоматическая сборка билдов, создание специфических установочных скриптов и локальных настроек, тестирование стабильности работы, и т.п. Т.е. это не совсем уровень разработчика. Это уровень мэйнтейнера. Ничуть при этом не менее значимый для конечного результата, чем уровень разработчика. Плюс к тому, существует ещё и традиция LinuxFromScratch в той или иной форме.
«Репозиторий (кода) – Рабочая копия» – это инструмент разработчика, для совместной работы над кодом в традициях ОпенСорс. Там где, собственно говоря, и рождается что-то новое.
Теперь, возвращаясь на грешную землю, что мы имеем? Несколько дистрибутивов, собранных из «классических» пакетов по образу и подобию (курсы НЛП практик/мастер/тренер)? Несколько проектов создания нового и интересного кода, на сегодняшний день очень слабо дифференцированного на отдельные «пактеты», «фреймворки», «плагины», и создаваемого в стиле FromScratch (это на мой несколько поверхностный вкус, бегло наблюдающего «по диагонали» за openmeta, metapractice и newcode, вполне вероятно что там внутри всё «по-взрослому», только это снаружи не очень видно)?
Разве openmeta имела своей целью только обозревать репозитории, дистрибутивы и интересные проекты, продуцировать видение всей широкой картинки и роудмапов и собирать свои дистрибутивы для пользователей? Мне казалось, что важным направлением было стимулирование ислледованией и разработок, расширение числа контрибьюторов, в духе ОпенСорс движения из этой самой компьютерной метафоры. Есть ли возможность вот как-то так разложить по полочкам: сюда – разработку, туда – тестирование и сборка дистрибутивов? Сюда – поддержку, туда – пропаганду? Роль openmeta именно в том самом связующем звене Максима Отставнова между авторами и пользователями? Или между авторами и авторами, пользователями, мэйнтейнерами дистрибутивов, проповедниками, тусовщиками, философами и предпринимателями?
Незнаю, насколько имеет смысл продолжать эту метафору дальше. Возможно, тот факт, что сейчас есть условно говоря 5 затесавшихся контрибьюторов и 500 ожидающих релиза early adopters, означает, что это не конечные пользователи, а активные интересующиеся фанаты стиля living on the edge. И тут не нужен полноценный релиз, а нужны хорошее видение, роудмап, ясное понимание перспектив и возможности соучастия.
2be continued...