Может, пора библиотеки засунуть на какой-нибудь SVN сервер? Хотя бы на тот же code.google.com
А то сейчас какой-то хаос с версиями и патчами. Я, например, функции встраивал-встраивал в файл, а в последний апдейт они не попали, т.е. надо искать что поменялось и опять добавлять. Файртон уже 10 тем создал с патчами.
Если будет SVN, каждый сможет вносить свои правки в разные части кода, проще будут решаться проблемы конфликтов участков кода, любому всегда будет доступна самая свежая разрабатываемая версия, легче откатиться, если патч что-то поломал и т.д.
Что думаете?
Неактивен
Я очень даже за. На самом деле, вполне можно создать проект на sourceforge.org. Всем было бы удобно. Надо только, чтобы Гранд все это держал под контролем, т.е. проверял все коммиты в SVN и откатывал неудачные, например. В общем, все обсуждаемо.
С другой стороны, если принять четкие правила, например, коммитеть только 100% рабочий код (и выработать тест-кейсы, естественно), то можно и без какого-то всерх-контроля.
Отредактировано fireton (16.07.2008 22:06)
Неактивен
Согласен. Итак, ждем решающего голоса Гранда.
Неактивен
Часто возникает желание внести в библиотеку какие-то небольшие усовершенствования, полезные в конкретном случае, но по рассуждению, становится понятно, что они не достаточно общие и могут вносить путаницу в других случаях. Например, предложенная Fireton'ом функция doTurnOff для источника света, возможно, отсутствует в оригинале потому, что слишком индивидуальна для введения стандарта. Так, во многих играх она будет вызываться автоматом по израсходовании запаса заряда/масла. Более того, есть подозрения, что в реализацию темной комнаты и источников света закралась ошибка автора игры. Иногда требуется слишком глубокое изучение функции, прежде чем вносить изменения. В результате, при отстутствии времени могу даже забыть о зависшем вопросе.
Андрей, да ты просто попробуй создать darkroom и фонарик в инвентаре - и все поймешь сам. doTurnon и doTurnoff имеют смысл только в случае, если источник света разрешено "включать". Например, свечку никто не будет наследовать от lightsource, switchItem - ведь свечу зажигают, а не включают.
Неактивен
Согласен, с doTurnoff я ошибся, но смысл понятен - сначала нужно детально разобраться, на что уходит куча времени.
С этим никто и не спорит. Тут как бы решение за тобой, как за автором локализации. Если ты достаточно доверяешь нескольким программерам здесь, то можешь перевести библиотеку в разряд "коллективного творчества", обговорив правила, конечно. Т.е. какие-то правки мы могли бы вносить самостоятельно. А ты был бы супервизором.
У нас на работе 25 человек работают над одними и теми же исходниками. Есть отработанный механизм правок. По всем вопросам (баг, фичреквест) создается задача. Супервизор назначает ее разработчику. Разработчик повторяет ошибку, понимает ее и решает. Задача уходит тестировщикам, которые проверяют решения и закрывают задачу.
Возможно, такой механизм слишком сложен для нас, но идея в том, что вполне возможно наладить правку исходников произвольным количеством программистов.
Если ты не готов к такому шагу (хочешь все держать в своих руках), то придется тебе тестировать все изменения самостоятельно...
Неактивен
Flint написал:
Написал заявку на SourceForge. Сказали, что рассмотрят в течении 1-3 дней.
Был скользкий момент с выбором лицензии: свою загрузить нельзя, можно только выбрать готовую. Я поставил GNU GPL, нормально?
Лучше бы MPL...
Неактивен
Flint написал:
Получать из репозитория файлы можно и даром, а вот если вы хотите поучаствовать в разработке, то регистрируйтесь на Сорсфорже и отписывайтесь здесь, я дам вам прав.
fireton (как нетрудно догадаться )
Неактивен
Загрузил туда последнюю версию библиотек (beta 3). Почему-то работает сервер очень плохо, сделать успешный коммит удалось раза с двадцатого.
А каким фронт-эндом пользуешься?
Неактивен
И пойти куда?
(Блин. Надо все-таки в какой-то момент выделенный сервер арендовать... Сейчас бы поставили svn и горя не знали...)
Неактивен
Наша контора сидит на CVS. Есть недостатки, но когда мы попытались уйти на SVN, ничего не получилось - оказалось жутко неудобно. У нас несколько больших (очень больших - миллионы строк кода) проектов, коллектив из порядка 30 человек. Нехватка удобных инструментов (например, построить дерево ревизий для файла SVN может с трудом) не дала нам перейти на него. Так что я за CVS. Тем более, что для CVS есть отличный фронт-энд (WinCvs).
Неактивен
из существенного - CVS не поддерживает переименования файлов / директорий - только удаление + добавление.
Это да. Но такая ситуация возникает не слишком часто.
плюс, если при коммите произошёл сбой, то в случае с CVS возможно повреждение структуры. для SVN это исключено.
За те пять лет, что я здесь работаю, не было не разу. А репозитарий у нас огроменный.
у меня с деревом ревизий файла на свн вообще никаких проблем не было. к примеру, из больших проектов, на свн "сидит" wxwidgets
Вероятно, история не такая большая. И проект недостаточно большой. Я говорю то, что знаю. Перейти с CVS не удалось. Два дня промучались и вернулись обратно.
Впрочем, возможно, для такого мелкого по объему проекта как RTADS SVN будет вполне достаточным. Только нормальный фронт-энд надо подобрать.
Интересно, а что это вы такое огроменное разрабатываете?
Информационно-справочную систему. И все инструменты по ее наполнению и сопровождению.
Неактивен
GrAndrey написал:
Уже закоммитил один релиз. А вы куда будете, в транк или в ветки?
Думаю, в транк.
А как мы будем осуществлять контроль за правильностью кода? Теоретически, нужно, чтобы новые коммиты не ломали старый код.
Неактивен
На этот раз, я собираю адреса ваших ящиков на Гмэйл, которые послужат логинами. Лучше пришлите их в личном сообщении, чтоб не заспамили.
У меня нет ящика на гмейл.
Неактивен
Положил на гуглекод последние изменения библиотеки + свое изменение про темные комнаты.
Неактивен
Андрей, ты не умеешь его готовить.
1. Возьми SmartSVN. Самый вменяемый клиент, по-моему.
2. Разработку веди прямо в той папке, куда вытягиваешь репозитарий. Тогда сразу будет видно, что изменилось.
3. Потключи к SmartSVN WinMerge в качестве диффера (или как это у них там называется, солвера).
Так - очень удобно работать.
Неактивен
GrAndrey написал:
WinMerge у меня стоял, но только в качестве дифа. Добавил как и мердж.
Все, понял. Можно мержить при сравнении, но только самим винмерджем, а не SVN клиентом.
В SmartSVN есть встроенный мержер. Я использую WinMerge только как "comparer".
Неактивен