OberonCore
https://forum.oberoncore.ru/

Применимость системы контроля версий
https://forum.oberoncore.ru/viewtopic.php?f=26&t=3384
Страница 3 из 4

Автор:  Александр Ильин [ Вторник, 12 Апрель, 2011 19:24 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Valery Solovey писал(а):
Параллельно с экспериментами обнаружилось, что в коде есть места, которые в ряде случаев могут приводить к ошибкам. То есть, не совсем, чтобы ошибка, но и не правильно. Меняем такие места. А потом требуется развернуть старый архив. Вот тут-то и появляются проблемы: оставить код с экспериментами нельзя (реальное приложение должно работать по-другому), но и перекрыть архивом тоже нельзя (в коде исправлены ошибки в нескольких местах; часть из этих мест вспомнилось без труда, а остальные выпали из головы).
Отлично! Это как раз пример "ветвления" кода, когда даже работая в одиночку человек сталкивается с нелинейными траекториями работы собственной головы.
А вообще, субъективно, мне контроль версий позволяет существенно разгрузить голову, выбросив из неё память о том, где и что я менял. Переключаясь между проектами, я люблю подходить каждый раз как с чистого листа. В голове только отработанный набор методик и поставленная задача, а весь фактический багаж должен быть вовне.

Автор:  Info21 [ Вторник, 12 Апрель, 2011 20:47 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Valery Solovey писал(а):
Info21 писал(а):
заархивировали работающую версию, и экспериментируем. В случае чего -- разархивировали назад.
Параллельно с экспериментами обнаружилось, что в коде есть места, которые в ряде случаев могут приводить к ошибкам. То есть, не совсем, чтобы ошибка, но и не правильно. Меняем такие места. А потом требуется развернуть старый архив. Вот тут-то и появляются проблемы: оставить код с экспериментами нельзя (реальное приложение должно работать по-другому), но и перекрыть архивом тоже нельзя (в коде исправлены ошибки в нескольких местах; часть из этих мест вспомнилось без труда, а остальные выпали из головы).
Да ладно :)

Save As..., потом вынули старый модуль, понажимали F9, включили исправления из экспериментальной версии в обновленный старый -- все равно же надо каждое исправление отдельно рассматривать.
Заархивировали обновленный старый.
Возвращаемся к экспериментам.

Делов-то :)

Пока СКВ = всего лишь файловая система с версиями, как в VMS было.
Это версионирование легко простой процедуркой Save Version оформить, которая, скажем, в имя файла номер вставляет (сжимает заодно, может, в какой-нибудь архив запихивает; можно для каждого модуля одноименную папку завести, где имя файла версии -- просто ее номер, для простоты работы).
Ну, Restore Version какую-нибудь к ней.
Еще List Versions, берущую выделенное имя файла и генерирующую список по, скажем, три гиперссылки для каждой версии.
Одна гиперссылка открывает окно браузинга с версией.
Вторая -- DEFINITION. Третья делает Restore Version.

Давайте дальше штурмовать :)

Автор:  Валерий Лаптев [ Вторник, 12 Апрель, 2011 21:14 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Info21 писал(а):
Пока СКВ = всего лишь файловая система с версиями, как в VMS было.

Еще раньше на RSX-11 каждый файл имел до 99 версий.
И я не понимаю, почему в винде до сих пор этого не добавили.

Автор:  Info21 [ Вторник, 12 Апрель, 2011 22:45 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Валерий Лаптев писал(а):
я не понимаю, почему в винде до сих пор этого не добавили.
Надо в ББ добавить :)

Автор:  Валерий Лаптев [ Среда, 13 Апрель, 2011 08:19 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

В RSX-11 еще фишка была: можно было задать количество сохраняемых версий. Ибо если не задать - версии размножаются со скоростью писания...
Наличие версий требует продуманной стратегии-тактики управления ими.

Автор:  Info21 [ Среда, 13 Апрель, 2011 16:56 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Валерий Лаптев писал(а):
Наличие версий требует продуманной стратегии-тактики управления ими.
Так пусть программер и решает, когда сделать StoreVersion.

Автор:  ilovb [ Среда, 13 Апрель, 2011 17:34 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Valery Solovey писал(а):
... (в коде исправлены ошибки в нескольких местах; часть из этих мест вспомнилось без труда, а остальные выпали из головы).


А кодеры не помечают правки? :shock:

Ну тогда конечно без контроля версий не обойтись

Автор:  ilovb [ Среда, 13 Апрель, 2011 17:41 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

У меня на работе принято так.

добавил код:
Цитата:
//+pupkin@myorg.ru 15.15.15 (причина)
тут новый код
///pupkin@myorg.ru


закомментил код:
Цитата:
//-pupkin@myorg.ru 15.15.15 (причина)
//тут старый код
///pupkin@myorg.ru


изменил код:
Цитата:
//*pupkin@myorg.ru 15.15.15 (причина)
//заменил:
//тут старый код
//на:
тут новый код
///pupkin@myorg.ru

Автор:  ==== [ Среда, 13 Апрель, 2011 17:56 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

15.15.15 - по логике дата изменения, ну очень странная дата.

Автор:  ilovb [ Среда, 13 Апрель, 2011 18:01 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

а pupkin вас не смутил? :lol:

Автор:  ==== [ Среда, 13 Апрель, 2011 18:32 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

ilovb писал(а):
а pupkin вас не смутил? :lol:
Нет, Пупкин программист - это понятно, но откуда 15-й месяц?

Автор:  ilovb [ Среда, 13 Апрель, 2011 20:11 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

А это время :)

Автор:  Александр Ильин [ Четверг, 14 Апрель, 2011 03:20 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

ilovb писал(а):
У меня на работе принято так.
Представляю, какое у вас месиво после 4-5 правок одной процедуры, тем более если границы правок пересекаются. : )

Автор:  igor [ Четверг, 14 Апрель, 2011 05:59 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

ilovb писал(а):
У меня на работе принято так.
Похоже на попытку превратить исходный код в СКВ.

Автор:  Владислав Жаринов [ Четверг, 14 Апрель, 2011 07:26 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

Александр Ильин в viewtopic.php?p=62357#p62357 писал(а):
Valery Solovey писал(а):
... Меняем такие места. А потом требуется развернуть старый архив. Вот тут-то и появляются проблемы: оставить код с экспериментами нельзя (реальное приложение должно работать по-другому), но и перекрыть архивом тоже нельзя (в коде исправлены ошибки в нескольких местах; часть из этих мест вспомнилось без труда, а остальные выпали из головы).
Отлично! Это как раз пример "ветвления" кода, когда даже работая в одиночку человек сталкивается с нелинейными траекториями работы собственной головы.
...
Вот представление нелинейных траекторий как раз мне показалось целесообразным через механизм графит-областей... правда, это только "внешняя схема" :) да и приложение к контролю версий нужно продумать...

Автор:  Евгений Темиргалеев [ Четверг, 14 Апрель, 2011 07:44 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

ilovb писал(а):
У меня на работе принято так.
Александр Ильин писал(а):
Представляю, какое у вас месиво после 4-5 правок одной процедуры, тем более если границы правок пересекаются. : )
igor писал(а):
Похоже на попытку превратить исходный код в СКВ.
Присоединяюсь.

Автор:  ilovb [ Четверг, 14 Апрель, 2011 08:53 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

А где вы видели 4-5 правок одной процедуры?
Это говнокод уже

Автор:  ilovb [ Четверг, 14 Апрель, 2011 09:09 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

igor писал(а):
Похоже на попытку превратить исходный код в СКВ.


Какое отношение к этому имеет СКВ???

Автор:  igor [ Четверг, 14 Апрель, 2011 09:30 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

ilovb писал(а):
Какое отношение к этому имеет СКВ???
Комментарии, которые Вы процитировали, не имеют отношения к предметной области (то есть к тому, что делает код), они скорее относятся к истории изменения кода, т.е. к информации, которую обычно хранит в себе СКВ.

Автор:  ilovb [ Четверг, 14 Апрель, 2011 09:58 ]
Заголовок сообщения:  Re: Применимость системы контроля версий

С точностью наоборот.

С каких это пор комментарии не имеют отношения к тому, что делает код?
А история изменения кода - это между версиями.
Еще раз спрошу где вы увидели версии? И где корреляция с СКВ?

Мой пост написан в контексте поста Веселовского.

Вот например:

Есть у вас версия 1.0

Решили прикрутить рюшечку. Прикрутили. Прекрасно. Версия 1.1 (в лог написали, что появилась рюшечка)
Обнаружил один из кодеров глюк, унаследованный из 1.0. (написал в лог, что появился глюк) В коде (как выше) поправил и закомментил.

Решили прикрутить рюшечку намбер два. Прикрутили. Прекрасно. Версия 1.2
И вдруг обнаруживается, что при прикручивании рюшечки в версии 1.1, непоправимо нарушена логика.
Возвращаемся к версии 1.0, предварительно собрав нужные правки кода с версии 1.1

Нафик тут СКВ??? Править код вы будете один хрен вручную. СКВ за вас это не сделает. Лог прекрасно в Ворде набирается.
Правки прекрасно контролэфом ищутся. Все правки прокомментированны, продатированы, и видно, кто это правил.

Страница 3 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/