Re[6]: Что даёт удаление бранчей в SVN?
От: Donz Россия http://donz-ru.livejournal.com
Дата: 27.01.10 14:15
Оценка:
Здравствуйте, Аноним, Вы писали:

D>>В SVN tag и branch — это одно и то же, так что в копировании туда-сюда смысла не видно.


А>По договоренности tag — неизменяемая ветка. Коммитить туда нельзя.


Ну да. Точно также можно договориться не коммтить в тот или иной бранч. Хотя чуть труднее следить за исполнением договоренностей.
Re[7]: Что даёт удаление бранчей в SVN?
От: zaufi Земля  
Дата: 27.01.10 14:42
Оценка:
Здравствуйте, Donz, Вы писали:

D>Здравствуйте, Аноним, Вы писали:


D>>>В SVN tag и branch — это одно и то же, так что в копировании туда-сюда смысла не видно.


А>>По договоренности tag — неизменяемая ветка. Коммитить туда нельзя.


D>Ну да. Точно также можно договориться не коммтить в тот или иной бранч. Хотя чуть труднее следить за исполнением договоренностей.

а для этого есть commit хуки и всякие ACL -- посылать нафиг всех кто пытаецо закоммитить куда не положено
Re[3]: Что даёт удаление бранчей в SVN?
От: Aquary Россия https://wmspanel.com/
Дата: 27.01.10 22:55
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>Это верно. Ты вот очень извращенно представляешь себе, как VCS работают.


Камрад, я с кучей VCS работал, и занимался процессом контроля версий и всем что с ним связано порядка 5 лет. Так что это не извращенное понимание, это понимание процесса "сверху", исходя из практик, общепринятых в отрасли. Звучит пафосно но на SVN свет клином не сошелся.
Если есть какая-то фича SVN, позволяющая воскрешать удаленные ветки (взяв предыдущую ревизию), то это не значит, что так и надо делать.

Кё>Современные сделаны так, чтобы из них ничего никуда пропасть не могло. Удаленный бранч никуда не исчезает. Можно в любой момент восстановить, продолжить, откатить, история изменений смотрится одной командой совершенно безотносительно, есть ли головной ревизии ссылка на этот бранч или нет.


Да забудь про ревизии. Я серьезно. И отойди на минуту от идеологии SVN.
Система контроля версий — она для хранения версий. Если что-то тебе в ней мозолит глаза — это проблема не количества бранчей, а системы контроля, которая вываливает тебе этих бранчей несметное количество.
Ты разве удаляешь запросы на изменения (багрепорты или как ещё они называются в твоей системе отслеживания ошибок), когда бага пофиксена? Записи ведь уже не нужны — ну так давайте и их грохать, зачем захламлять базу? Конечно, эти записи останутся в репликах БД, которые постоянно делаются админами — и можно будет восстановить. Но надо ли их вообще удалять?

Кё>Есть же общеизвестные правила:

Кё>- не комментируйте ненужный код, а удаляйте насовсем — он все равно сохранен в VCS
Кё>- не помечайте файлы NOT USED, не оставляйте пустых файлов и папок, а удаляйте насовсем — их всегда можно восстановить

Всё верно.

Кё>"не оставляйте ненужных бранчей" — просто логическое продолжение того же самого


Не верно. Логично тогда вообще удалять всё, что не является актуальным более 2-3 недель, как это делает камрад zaufi из этой же ветки. У каждого свой стиль работы, с этим не поспоришь. Однако для меня, как для СМ-инженера, это кощунство

Кё>Держать проект в чистоте и порядке — это очень огромный плюс, который перевесил бы немало минусов, если бы они были.


Содержи, кто тебе мешает. Но сохранение истории изменений — это разве не сохранение порядка?
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[5]: Что даёт удаление бранчей в SVN?
От: Aquary Россия https://wmspanel.com/
Дата: 27.01.10 22:55
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>А какую пользу ты собираешься извлечь из висящего реинтегрированного бранча? Единственная, какую я вижу — сразу видно, какие бранчи были в принципе, за все время проекта — т.е. какбы дополнительные точки входа в историю.


Скажу на примере своего опыта. Я проработал 3 года интегратором на крупном проекте с порядка 100-150 участниками по всему миру, использовали IBM Rational ClearCase. Так вот на таких проектах возможность просмотреть все бранчи (без выдергивания предыдущих ревизий и прочих приседаний) — пригождалась постоянно.
Потому что даже спустя 2-3 месяца возникала необходимость посмотреть кто внёс дельту, по какому запросу на изменение он это сделал, откуда делал слияние исходников, был ли сделан upmerge и на какой baseline, куда ещё пошли изменения с этой же ветки. Кстати, мёрж с одной ветки на разные релизные ветки — это достаточно распространенная распространенная практика, и не только на крупных проектах. И необходимость проследить историю веток и мёржей без просматривания разного количества предыдущих ревизий — это жесткая необходимость.
В случае с удалением бранчей из текущей ревизии подобная модель разработки была бы очень трудоемкой.
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[4]: Что даёт удаление бранчей в SVN?
От: . Великобритания  
Дата: 28.01.10 00:08
Оценка:
On 28/01/2010 00:55, Aquary wrote:

> Кё>Это верно. Ты вот очень извращенно представляешь себе, как VCS работают.

> Камрад, я с кучей VCS работал, и занимался процессом контроля версий и
> всем что с ним связано порядка 5 лет. Так что это не извращенное
> понимание, это понимание процесса "сверху", исходя из практик,
> общепринятых в отрасли. Звучит пафосно но на SVN свет клином не сошелся.
> Если есть какая-то фича SVN, позволяющая воскрешать удаленные ветки
> (взяв предыдущую ревизию), то это не значит, что так и надо делать.
Они не воскрешаются, а достаются из истории. В svn в принципе ничего нельзя уничтожить.

Попиарю git ещё.. он показывает всю историю мерджей в виде красивого графа, так что сами ветки не нужны. После слияния ветки история тоже сливается.

А вообще, у Линуса Т. проект поболее 5 лет и исходников, и участников проекта думаю на порядок или даже два больше, чем у было у тебя. И не смотря на это, удалять ветки там можно очень легко, мало того, там можно и историю редактировать — удалять ревизии и т.п. (супер штука — rebase).
Если бы сохранялись все ветки Линукса — оно бы загнулось быстро.

> Да забудь про ревизии. Я серьезно. И отойди на минуту от идеологии SVN.

> Система контроля версий — она для *хранения версий*. Если что-то тебе в
> ней мозолит глаза — это проблема не количества бранчей, а системы
> контроля, которая вываливает тебе этих бранчей несметное количество.
> Ты разве удаляешь запросы на изменения (багрепорты или как ещё они
> называются в твоей системе отслеживания ошибок), когда бага пофиксена?
Конечно, переводишь её в состояние closed, что равнозначно удалению в svn. Логическое удаление называется.

> Записи ведь уже не нужны — ну так давайте и их грохать, зачем захламлять

> базу? Конечно, эти записи останутся в репликах БД, которые постоянно
> делаются админами — и можно будет восстановить. Но надо ли их вообще
> удалять?
Для восстановления удалённого в svn не нужно звать админов, как и для поиска закрытых багрепортом достаточно пошарить по истории.

> Не верно. Логично тогда вообще удалять всё, что не является актуальным

> более 2-3 недель, как это делает камрад zaufi из этой же ветки. У
> каждого свой стиль работы, с этим не поспоришь. Однако для меня, как для
> СМ-инженера, это кощунство
Дык в svn удаление логическое. Может в clear case это было проблемой, я не знаю эту систему. Но, по-моему, это страшный динозавр, не удивлюсь, что там всё плохо.

> Кё>Держать проект в чистоте и порядке — это очень огромный плюс, который

> перевесил бы немало минусов, если бы они были.
> Содержи, кто тебе мешает. Но сохранение истории изменений — это разве не
> сохранение порядка?
В svn историю испортить можно только прямым доступом к файлам репозитория.
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[5]: Что даёт удаление бранчей в SVN?
От: Aquary Россия https://wmspanel.com/
Дата: 28.01.10 00:19
Оценка:
Здравствуйте, ., Вы писали:

.>Если бы сохранялись все ветки Линукса — оно бы загнулось быстро.


Ну, если б git загнулся от подобной нагрузки — это говорило бы не в пользу git Потому как Линус напирал на то, что уж он-то теперь сделал по-настоящему правильную систему и остальные нервно курят. В пристнопамятной презентации он как только не ругал SVN и CVS, приговариявая, что уж у него-то SVN done right.

.>Дык в svn удаление логическое. Может в clear case это было проблемой, я не знаю эту систему. Но, по-моему, это страшный динозавр, не удивлюсь, что там всё плохо.


ClearCase не трож! Там всё отлично. Идеология отличается от SVN — и многие не могут переварит данного факта. Просто они для разных задач сделаны, соответственно, идеологии тоже отличаются.

.>В svn историю испортить можно только прямым доступом к файлам репозитория.


Короче, главное, чтобы задачи разработчиков и интеграторов решались как можно менее затратно. Если кому-то удобно удалять — на здоровье.
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[7]: Что даёт удаление бранчей в SVN?
От: Aquary Россия https://wmspanel.com/
Дата: 28.01.10 00:57
Оценка:
Здравствуйте, Donz, Вы писали:

А>>По договоренности tag — неизменяемая ветка. Коммитить туда нельзя.


D>Ну да. Точно также можно договориться не коммтить в тот или иной бранч. Хотя чуть труднее следить за исполнением договоренностей.


К слову, в большинстве системах контроля версий — метки и ветки принципиально разные сущности. Метки — вешаются на версию, а ветки — отращиваются от версий. В CVS, Perforce, Clearcase — как и в других — в tag нельзя ничего закоммитить даже теоретически.

Это к вопросу о правилах и их соблюдении. Лучше сделать так, чтобы пользователь не смог сделать ошибки, чем теоретически давать такую возможность и постоянно следить, чтобы никто не делал лишнего (путем создания договоренностей или спец.хуков). Но это так... к слову, ибо наболело
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[6]: Что даёт удаление бранчей в SVN?
От: . Великобритания  
Дата: 28.01.10 01:08
Оценка: :)
On 28/01/2010 02:19, Aquary wrote:

> Ну, если б git загнулся от подобной нагрузки — это говорило бы не в

> пользу git Потому как Линус напирал на то, что уж он-то теперь сделал
Нет, git вряд ли загнётся, он железный. А вот разработчики/интеграторы бы загнулись с мульёнами веток и мерджей.

> по-настоящему правильную систему и остальные нервно курят. В

> пристнопамятной презентации он как только не ругал SVN и CVS,
> приговариявая, что уж у него-то SVN done right.
Как мне кажется, он оказался прав. Хотя идеология там тоже сильно другая. В лучших традициях линукса, user friendly in unix way: система дружественная, но дружбу ещё нужно заслужить.
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[8]: Что даёт удаление бранчей в SVN?
От: Donz Россия http://donz-ru.livejournal.com
Дата: 28.01.10 08:28
Оценка: +1
Здравствуйте, Aquary, Вы писали:

A>К слову, в большинстве системах контроля версий — метки и ветки принципиально разные сущности. Метки — вешаются на версию, а ветки — отращиваются от версий. В CVS, Perforce, Clearcase — как и в других — в tag нельзя ничего закоммитить даже теоретически.


A>Это к вопросу о правилах и их соблюдении. Лучше сделать так, чтобы пользователь не смог сделать ошибки, чем теоретически давать такую возможность и постоянно следить, чтобы никто не делал лишнего (путем создания договоренностей или спец.хуков). Но это так... к слову, ибо наболело


Я в курсе и тоже не понимаю, нафига в SVN объединили эти две сущности.
Re[9]: Что даёт удаление бранчей в SVN?
От: . Великобритания  
Дата: 28.01.10 13:49
Оценка:
On 28/01/2010 10:28, Donz wrote:

> Я в курсе и тоже не понимаю, нафига в SVN объединили эти две сущности.

На самом деле дизайн svn это позволил, не плодить лишние сущности. Скажем, в cvs это было бы невозможно. Тег в классическом понимании в svn можно сделать с помощью externals или обычного текстового файлика, т.к. это по сути url в репозитории + номер ревизии (в cvs для этой функциональности требуется новая отдельная фича — тег, иначе никак). Но для удобства использования и простоты просто рекомендуют создать директорию tags и не париться.
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[9]: Что даёт удаление бранчей в SVN?
От: Mr.Cat  
Дата: 28.01.10 13:59
Оценка:
Здравствуйте, Donz, Вы писали:
D>Я в курсе и тоже не понимаю, нафига в SVN объединили эти две сущности.
Все суть папки — порой удобная штука. Например, позволяет без дополнительных плясок (1)чекаутить только то, что нужно и (2)иметь в ФС сразу дерево рабочих копий (с разных веток) без необходимости свитча.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.