Товарищи git'исты и hg'исты!
Nov. 6th, 2011 10:29 amМне похожа нужна консультация по распределённым системам контроля версий:
как я правильно понимаю, и в git и в hg система меток и веток скорее похожа на cvs'ную, а не на svn'ную, то есть они не часть пространства директорий, а некий совсем отдельный вектор.
Соответственно вопросы:
1. Если я единожны создам branch(head) или tag то смогу ли я его потом удалить
2. Если удалить смогу, то как будет осуществляться доступ к тому что было удалено
3. Если не смогу, то как поддерживать порядок, и не копаться в куче древних ветвей
4. У меня в git вся иерархия svn импортировалась деревом c branches/trunk/tags. Мне что теперь чтобы сохранить эту идеологию надо от этой иерархии насоздавать требуемое кол-вто веток, переместить требуемое поддерево в корень и поименовать этот бранч/ затагить? И в результате окажется та же структура но уже в понятиях git/hg?
5. В hg импортировать svn мне не удалось, она пытается иерархию branches/trunk/tags воспринимать как свои ветки и метки, и не осиливает того безобразия которе там творилось за всю историю, и часть истории не импортирует... Вилидимо если xtodin так хочет hg буду ее мигрировать через git
как я правильно понимаю, и в git и в hg система меток и веток скорее похожа на cvs'ную, а не на svn'ную, то есть они не часть пространства директорий, а некий совсем отдельный вектор.
Соответственно вопросы:
1. Если я единожны создам branch(head) или tag то смогу ли я его потом удалить
2. Если удалить смогу, то как будет осуществляться доступ к тому что было удалено
3. Если не смогу, то как поддерживать порядок, и не копаться в куче древних ветвей
4. У меня в git вся иерархия svn импортировалась деревом c branches/trunk/tags. Мне что теперь чтобы сохранить эту идеологию надо от этой иерархии насоздавать требуемое кол-вто веток, переместить требуемое поддерево в корень и поименовать этот бранч/ затагить? И в результате окажется та же структура но уже в понятиях git/hg?
5. В hg импортировать svn мне не удалось, она пытается иерархию branches/trunk/tags воспринимать как свои ветки и метки, и не осиливает того безобразия которе там творилось за всю историю, и часть истории не импортирует... Вилидимо если xtodin так хочет hg буду ее мигрировать через git
no subject
Date: 2011-11-11 08:21 am (UTC)Истории изменений может не быть локально только если об этом специально попросили. Можно конкретику, что именно не работает и как?
no subject
Date: 2011-11-11 02:21 pm (UTC)Потому что мне пофиг какой формат выврда, лишь бы оно всю историю отслеживала
Зачем -C три раза?
Чем больше -С тем больше глубина поиска
Можно конкретику, что именно не работает и как?
Тут даже не то чтобы что-то работает не так, скорее я не понимаю как добиться того что мне надо.
Мне нужен репозиторий со всей историей проекта. Если импортировать без ключа -s то тогда в репозиторий попадает вся svn'ая структура директорий /tags/branches/trunk, и в ней если сказать git blame -M -C -C -C то оно покажет авторство каждой строки начиная с начала времен.
Если же импортировать с ключем -S то в репозиторий попадает то что лежит в /trunk а ветки и таги попадают оный remotes Соответственно если в таком репозитории сказать git blame -M -C -C -C на ченджлог, то оно покажет изменения начиная с того места когда были какие-то сильные телодвежения в рамках ветвления...
Чело мне в этом не хватает: Надо научится как это remote ветки перевести в не remote состояние. либо при импорте, либо уже после.
Тогда я убеждаюсь что вся история сохранилась, и начинаю наводить порядок в репозитории... Если не сохранилась, то пытаюсь придумать что с этим делать:-/
no subject
Date: 2011-11-12 08:28 am (UTC)git log -M докуда изменения показывает?
no subject
Date: 2011-11-12 10:05 am (UTC)Гм... однако на скопированных файлах он как минимум дает нужный эффект...
git log -M докуда изменения показывает?
До момента переименования.
git log --follow до начала времен.
no subject
Date: 2011-11-12 10:18 am (UTC)А log -M это "If generating diffs, detect and report renames for each commit. For following files across renames while traversing history, see --follow."
no subject
Date: 2011-11-12 10:53 am (UTC)no subject
Date: 2011-11-12 11:10 am (UTC)no subject
Date: 2011-11-12 11:46 am (UTC)Это на git'е в которой все единой структурой директорий засосалось...
no subject
Date: 2011-11-12 02:47 pm (UTC)no subject
Date: 2011-11-11 04:21 pm (UTC)1. Правильно ли я понимаю, что оные remote ветки пока в гите не хратятся и будут при обращении к ним затянуты в репозиторий?
2. Как эти remote ветки привратить в обычные локальные, чтобы этот репозиторий можно было вынести на внешний хостинг? Я что-то не осилил.
no subject
Date: 2011-11-12 08:25 am (UTC)2. git checkout -b branch remotebranch