[SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 02.08.08 13:25
Оценка:
привет
есть ли в svn возможность не трекать историю бинарников (в perforce например для этого можно указать тип файла "binary+S")?
"Что не завершено, не сделано вовсе" Гаусс
Re: [SVN] не сохранять историю бинарных файлов
От: Хитрик Денис Россия RSDN
Дата: 02.08.08 14:44
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>привет

S>есть ли в svn возможность не трекать историю бинарников (в perforce например для этого можно указать тип файла "binary+S")?

Что имеется в виду? Не хранить в репозитории бинарники? Так никто и не заставляет их туда добавлять.
Правила нашего с вами форума.
Как правильно задавать вопросы. © 2001 by Eric S. Raymond; перевод: © 2002 Валерий Кравчук.
Re[2]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 02.08.08 14:52
Оценка:
Здравствуйте, Хитрик Денис, Вы писали:

ХД>Что имеется в виду? Не хранить в репозитории бинарники?


нет
в репозитории нужно хранить информацию только о HEAD revision бинарных файлов. При очередном коммите бинарника информация о его предыдущей ревизии должна полностью удаляться. Это позволит нехило обезжирить занимаемое репозиторием место
"Что не завершено, не сделано вовсе" Гаусс
Re[3]: [SVN] не сохранять историю бинарных файлов
От: Хитрик Денис Россия RSDN
Дата: 02.08.08 14:58
Оценка:
Здравствуйте, sadomovalex, Вы писали:

ХД>>Что имеется в виду? Не хранить в репозитории бинарники?

S>нет
S>в репозитории нужно хранить информацию только о HEAD revision бинарных файлов. При очередном коммите бинарника информация о его предыдущей ревизии должна полностью удаляться. Это позволит нехило обезжирить занимаемое репозиторием место

Нет, такого нет. Как хранятся бинарные данные в SVN можно узнать здесь.

P.S. Да и необходимость этой фичи вызывает некоторые вопросы, на самом деле.
Правила нашего с вами форума.
Как правильно задавать вопросы. © 2001 by Eric S. Raymond; перевод: © 2002 Валерий Кравчук.
Re[3]: [SVN] не сохранять историю бинарных файлов
От: Cyberax Марс  
Дата: 02.08.08 15:00
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>в репозитории нужно хранить информацию только о HEAD revision бинарных файлов. При очередном коммите бинарника информация о его предыдущей ревизии должна полностью удаляться. Это позволит нехило обезжирить занимаемое репозиторием место

Такое можно сделать, но потребуется dump/load-цикл.
Sapienti sat!
Re[4]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 02.08.08 15:16
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, sadomovalex, Вы писали:


C>Такое можно сделать, но потребуется dump/load-цикл.


если есть такая возможность, то скриптик на питоне будет не сложно наваять. Но вот только я сомневаюсь что в пределах _одного_ репозитория dump/load поможет
"Что не завершено, не сделано вовсе" Гаусс
Re[4]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 02.08.08 15:21
Оценка: +2 -2
Здравствуйте, Хитрик Денис, Вы писали:

ХД>P.S. Да и необходимость этой фичи вызывает некоторые вопросы, на самом деле.


необходимость возникает когда с этим сталкнешься. К примеру в .net-ном солюшене есть проект, который редко правится и который занимает большую часть времени при билде. Что приходит на ум? Положить сгенеренную dll-ку в source control system (предварительно сделав ее strong name, чтобы проблемы быстрее обнаруживались). А вот зачем трекать историю ревизий этой dll-ки в source control — действительно вызывает некоторые вопросы
"Что не завершено, не сделано вовсе" Гаусс
Re[5]: [SVN] не сохранять историю бинарных файлов
От: Хитрик Денис Россия RSDN
Дата: 02.08.08 15:32
Оценка: +1
Здравствуйте, sadomovalex, Вы писали:

ХД>>P.S. Да и необходимость этой фичи вызывает некоторые вопросы, на самом деле.

S>необходимость возникает когда с этим сталкнешься. К примеру в .net-ном солюшене есть проект, который редко правится и который занимает большую часть времени при билде. Что приходит на ум? Положить сгенеренную dll-ку в source control system (предварительно сделав ее strong name, чтобы проблемы быстрее обнаруживались). А вот зачем трекать историю ревизий этой dll-ки в source control — действительно вызывает некоторые вопросы

Вообще, хранить скомпилированные бинарники вместе с исходниками — не очень хорошая практика.
Первое, что приходит на ум, это не хранить специальным образом ненужные DLL в репозитории, а из конфигурации солюшена исключить указанный проект и делать ему билд по запросу или регулярно, раз в неделю/месяц и т.д.
Правила нашего с вами форума.
Как правильно задавать вопросы. © 2001 by Eric S. Raymond; перевод: © 2002 Валерий Кравчук.
Re[5]: [SVN] не сохранять историю бинарных файлов
От: Cyberax Марс  
Дата: 02.08.08 15:38
Оценка:
Здравствуйте, sadomovalex, Вы писали:

C>>Такое можно сделать, но потребуется dump/load-цикл.

S>если есть такая возможность, то скриптик на питоне будет не сложно наваять. Но вот только я сомневаюсь что в пределах _одного_ репозитория dump/load поможет
Поможет. Есть возможность отфильтровать определённые ревизии файлов.

Т.е. раз в неделю запускаете "garbage collector", который выкинет из репозитория мусор. Смотрите в направлении svndumpfilter.

Но вообще, я бы что-нибудь поменял в workflow. Например, не использовал бы SVN для бинарных файлов.
Sapienti sat!
Re[6]: [SVN] не сохранять историю бинарных файлов
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 02.08.08 16:12
Оценка: +1
Здравствуйте, Cyberax, Вы писали:

C>Например, не использовал бы SVN для бинарных файлов.


а как быть в такой ситуации — проект на несколько разработчиков, несколько разных средств разработки. Каждый отдельный разработчик в принципе не может скомпилить все на своей машине из исходников. Проект активно развивается, каждому нужно постоянно иметь последние версии всех бинарников. Где их брать?
... << RSDN@Home 1.2.0 alpha 4 rev. 0>>
Re[6]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 02.08.08 16:22
Оценка: +1
Здравствуйте, Хитрик Денис, Вы писали:

ХД>Вообще, хранить скомпилированные бинарники вместе с исходниками — не очень хорошая практика.

ХД>Первое, что приходит на ум, это не хранить специальным образом ненужные DLL в репозитории, а из конфигурации солюшена исключить указанный проект и делать ему билд по запросу или регулярно, раз в неделю/месяц и т.д.

в некоторых ситуациях вообще необходимо избежать билда проекта — ситуация примерно такая, какая описана здесь
Автор: Odi$$ey
Дата: 02.08.08
. В этом случае хранение dll-к вместе с исходниками кажется вполне подходящим решением
"Что не завершено, не сделано вовсе" Гаусс
Re[7]: [SVN] не сохранять историю бинарных файлов
От: andrey.t  
Дата: 02.08.08 16:37
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>а как быть в такой ситуации — проект на несколько разработчиков, несколько разных средств разработки. Каждый отдельный разработчик в принципе не может скомпилить все на своей машине из исходников. Проект активно развивается, каждому нужно постоянно иметь последние версии всех бинарников. Где их брать?


Использовать Dependency Manager, например Ivy? http://ant.apache.org/ivy/
... << RSDN@Home 1.2.0 alpha rev. 783>>
Re[5]: [SVN] не сохранять историю бинарных файлов
От: SE Украина  
Дата: 03.08.08 08:15
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>А вот зачем трекать историю ревизий этой dll-ки в source control — действительно вызывает некоторые вопросы


Захотелось своего маленького dll hell в проекте? Стоит перестать трекать dll и ревизии которые работают со старой версией этой библиотеки с большой долей вероятности "поломаются".
Re: [SVN] не сохранять историю бинарных файлов
От: SE Украина  
Дата: 03.08.08 08:19
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>привет

S>есть ли в svn возможность не трекать историю бинарников (в perforce например для этого можно указать тип файла "binary+S")?

Я такой возможности не нашел. Вместо этого храню сторонние библиотеки в отдельном репозитории и пользуюсь svn:external. Эффект тот же, но без побочных эффектов вроде поломки старых версий программы с новой версией бинарника.
subversion svn:external
Re[6]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 03.08.08 09:55
Оценка:
Здравствуйте, SE, Вы писали:

SE>Захотелось своего маленького dll hell в проекте? Стоит перестать трекать dll и ревизии которые работают со старой версией этой библиотеки с большой долей вероятности "поломаются".


(предварительно сделав ее strong name, чтобы проблемы быстрее обнаруживались)
"Что не завершено, не сделано вовсе" Гаусс
Re[7]: [SVN] не сохранять историю бинарных файлов
От: _FRED_ Черногория
Дата: 03.08.08 10:14
Оценка: 4 (1) +2
Здравствуйте, Odi$$ey, Вы писали:

C>>Например, не использовал бы SVN для бинарных файлов.

OE>а как быть в такой ситуации — проект на несколько разработчиков, несколько разных средств разработки. Каждый отдельный разработчик в принципе не может скомпилить все на своей машине из исходников. Проект активно развивается, каждому нужно постоянно иметь последние версии всех бинарников. Где их брать?

Из сурсконтрола. А вот что делать, например, когда в описанной ситуации разработчику потребуется собрать у себя локально не текущуюю версию, не какой-нибудь бранч, а конкретный changeset (не помню, как называется в SVN, но из названия должно быть ясно, что имеется в виду)? Если не хранится история, то это может быть невозможно.
Help will always be given at Hogwarts to those who ask for it.
Re[7]: [SVN] не сохранять историю бинарных файлов
От: SE Украина  
Дата: 03.08.08 18:24
Оценка:
Здравствуйте, sadomovalex, Вы писали:

SE>>Захотелось своего маленького dll hell в проекте? Стоит перестать трекать dll и ревизии которые работают со старой версией этой библиотеки с большой долей вероятности "поломаются".


S>(предварительно сделав ее strong name, чтобы проблемы быстрее обнаруживались)


В этом случае версия тем более "поломается" — она просто не соберется, это конечно лучше чем dll hell, но нужной версии подписанной dll может уже и не оказаться, не трекаем ведь.
И что тогда делать, если понадобится срочно рабочий билд за номером XYZ? А ведь это не такая уж и редкость.
Re[8]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 04.08.08 09:16
Оценка:
Здравствуйте, SE, Вы писали:

SE>В этом случае версия тем более "поломается" — она просто не соберется, это конечно лучше чем dll hell, но нужной версии подписанной dll может уже и не оказаться, не трекаем ведь.

SE>И что тогда делать, если понадобится срочно рабочий билд за номером XYZ? А ведь это не такая уж и редкость.

в этом случае, конечно, либо поднимать environment, либо хранить версии.
Но меня это не интересует, я решаю вопрос — как удалить историю бинарных файлов, что нужно мне в данный конкретный момент
"Что не завершено, не сделано вовсе" Гаусс
Re: [SVN] не сохранять историю бинарных файлов
От: _FRED_ Черногория
Дата: 05.08.08 05:11
Оценка:
Здравствуйте, sadomovalex, Вы писали:

S>есть ли в svn возможность не трекать историю бинарников (в perforce например для этого можно указать тип файла "binary+S")?


А чем не подходит способ "выложить это всё добро на общую шару"?
Help will always be given at Hogwarts to those who ask for it.
Re[2]: [SVN] не сохранять историю бинарных файлов
От: sadomovalex Россия http://sadomovalex.blogspot.com
Дата: 05.08.08 14:34
Оценка:
Здравствуйте, _FRED_, Вы писали:

_FR>Здравствуйте, sadomovalex, Вы писали:


S>>есть ли в svn возможность не трекать историю бинарников (в perforce например для этого можно указать тип файла "binary+S")?


_FR>А чем не подходит способ "выложить это всё добро на общую шару"?


задампать для архива не выйдет — охота чтобы все было в одном месте
"Что не завершено, не сделано вовсе" Гаусс
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.