Russian Qt Forum
Июнь 13, 2024, 15:03 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3   Вниз
  Печать  
Автор Тема: переход на svn  (Прочитано 14380 раз)
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #15 : Июнь 23, 2011, 18:41 »

Даже не касаясь внутреннего устройства гита, он удобнее (больше возможностей), быстрее, более продуман. Причем это не голые слова, возможность переключить ветку за 5 секунд  (в случае репы Qt; в случае среднего проекта несколько сотых секунды) решает, по сравнению с выкачиванием бранча в свн (допустим 20 минут)
Свн просто морально устарел, тк писался давно. Единственный его плюс - куча гуи утилит, но под маком к счастью есть гити. Гит-гуи убог:)
Записан
kamre
Частый гость
***
Offline Offline

Сообщений: 233


Просмотр профиля
« Ответ #16 : Июнь 23, 2011, 19:59 »

Пара вопросов знатокам git:
  - как сделать клон только части репозитория (в svn можно сделать checkout любой поддиректории)?
  - как хранить в git бинарники, если при их версионировании репозиторий (и всего его клоны) очень быстро распухает?
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #17 : Июнь 23, 2011, 20:30 »

1) никак, гит это не умеет. Да и зачем, ведь с гитом не надо держать несколько копий репо, надо заводить ветку в _одном_ локальном репозитории
2) это не проблема, смело храните. Гит не хранит диффы файлов (в отличие от всех остальных СУВ), он всегда хранит актуальное состояние файла (в случае, если файл не менялся, он хранит сим(хард?)линк). Если это вас напрягает - смотрите в сети сравнения, при прочих равных каталог с гитом занимает места меньше чем свн.
« Последнее редактирование: Июнь 23, 2011, 20:33 от Авварон » Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #18 : Июнь 23, 2011, 20:42 »

Цитировать
каталог с гитом занимает места меньше чем свн
Причем намного меньше.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
kamre
Частый гость
***
Offline Offline

Сообщений: 233


Просмотр профиля
« Ответ #19 : Июнь 24, 2011, 00:09 »

1) никак, гит это не умеет. Да и зачем, ведь с гитом не надо держать несколько копий репо, надо заводить ветку в _одном_ локальном репозитории
А причем здесь ветки? При конвертации репозитория из svn получается огромный git репозиторий, и из него нельзя клонировать только часть (поддерево директорий).

2) это не проблема, смело храните. Гит не хранит диффы файлов (в отличие от всех остальных СУВ), он всегда хранит актуальное состояние файла (в случае, если файл не менялся, он хранит сим(хард?)линк). Если это вас напрягает - смотрите в сети сравнения, при прочих равных каталог с гитом занимает места меньше чем свн.
Файлы бинарые под 10-20Мб, которые меняются периодически. При svn checkout только одна последняя актуальная версия забирается, а при клонировании в git все версии таких файлов за всю историю. Никак это занимать меньше места не может.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #20 : Июнь 24, 2011, 02:50 »

Ветки при том что просто нет нужды выкачивать кусок репа (в конце-концов вы просто не соберете этот кусок для теста). Нужда выкачивать куски возникает когда нужен быстрый фикс и нет возможности его выполнить в основном репозитории. Это решается веткой/стэшем
Не верите - смотрите сравнения. Дело в том, что свн хоть и использует диффы, использует их неоптимально.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #21 : Июнь 24, 2011, 05:48 »

>>git gui отличный гуй к гиту
и всё таки это какашка да ещё и вложенная в стандартный дистриб.
В нём даже банальные <Ctrl>+<C> не работают. Нельзя колесом мыши пользоваться в списках, только в GitTk работает да и то не везде.

Что же касается линуха и SVN-а, то мне нравился KDE SVN (пока я линём баловался)
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #22 : Июнь 24, 2011, 05:51 »

>>а при клонировании в git все версии таких файлов за всю историю. Никак это занимать меньше места не может.
Мой опыт:
Держал в SVNе под контролем версий одну БД, доросшей за год до 1,5 Гиг.
Переполз на Git (с помощью git svn) и обнаружил, что хранилище похудело на 30% !!!
Записан

Юра.
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #23 : Июнь 24, 2011, 07:17 »

>>git gui отличный гуй к гиту
и всё таки это какашка да ещё и вложенная в стандартный дистриб.
В нём даже банальные <Ctrl>+<C> не работают. Нельзя колесом мыши пользоваться в списках, только в GitTk работает да и то не везде.
УМВР
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #24 : Июнь 24, 2011, 09:59 »

при русской раскладке клавиатуры пробовал?
У авторов тикля не работает, как же у тебя оно работает.

П.С.
также и у GTK+ таже болезнь.
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #25 : Июнь 24, 2011, 10:00 »

>> как сделать клон только части репозитория (в svn можно сделать checkout любой поддиректории)?
Можно склонировать с ограничением истории, но это получится хранилище только для чтения. (см. ключи к git clone)
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #26 : Июнь 24, 2011, 10:02 »

>>Гит не хранит диффы файлов
это новость для меня. Как-то читал, Гит - коллекция патчей и инструментарий для их обработки
Записан

Юра.
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #27 : Июнь 24, 2011, 10:41 »

Да, гит хранит дифы. Но тоже как-то интересно. Если периодически делать git gc, то оно как-то самоочищается и размер репы уменьшается.

Кстати, только что мержил 2 бранча, в каждом было сделано множество изменений. Так вот практически все гит сам разрулил, вручную пришлось только немного поработать. В итоге за час все сделал. В свн даже не известно, сколько пришлось бы мучатся.
Недавно с свн была такая задача: из определенного коммита транка отбранчеваться, поработать и поменять транк на этот бранч (без мержа, просто заменить). На эту задачу я убил часа 3-4. Транк пришлось удалять, так как другого способа я не нашел.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #28 : Июнь 24, 2011, 11:36 »

gc скорее всего удаляет мертвые ветки и детачед хеды (к примеру, при аменде исходный коммит для аменда не стирается, лишь выкидывается из ветви)
и гит таки не хранит диффы:) он хранит блобы - содержимое файла (именно содержимое, а не сам файл. блобы шарятся между одинаковыми файлами) +спец инфа
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #29 : Июнь 24, 2011, 11:36 »

Да, тут я не прав.
Рекомендую посмотреть http://www.youtube.com/watch?v=BtAlN4MaBr8
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Страниц: 1 [2] 3   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.056 секунд. Запросов: 22.