2010-07-01 4 views
4

Разработчик в моей команде использует ветвь, привязанную к серверу (IE, только с помощью проверки, обновления и фиксации), но также часто использует флаг -local при фиксации, а затем берет на себя сервер в пакете. Недавно она столкнулась с ситуацией, когда ей не хватает местных коммитов, и они не могут найти их в репо или ее местном коде. Она подозревает, что это происходит из-за того, что в какой-то момент она делала попытку совершить локальные коммиты и поручить сервер.Некоторый код был потерян после выполнения bzr commit --local, bzr pull, bzr commit

Ни один из нас не испытывает особого опыта с Bazaar - Что могло случиться, и где мы можем искать этот недостающий код? Она вполне уверена, что она никогда не делала ничего разрушительного, и я вполне уверен, что Базар спросил бы ее, будет ли это делать. Я смутно помню, что у Bazaar есть понятие «скрытых» репозиториев/деревьев/независимо от того, где он помещает вещи, прежде чем менять кучу кода, из которого кто-то может восстановить потерянный код, но я не могу уйти в Google, что это такое.

ответ

3

Я понял, что «скрытый» «repos/trees/whatever», о которых я говорил, это «мертвые головы», просмотренные bzr heads.

Мы нашли нашу мертвую голову и слили ее обратно - код сохранен!

$ bzr heads 
$ # output shows various heads, with names like: revision-id: [email protected](dead) 
$ bzr merge [email protected] 
+0

Рад, что вы его решили – thomasrutter

+1

Исправить. Вам нужен плагин bzrtools для работы 'bzr heads -dead''. – bialix

0

В любое время вы можете сделать

bzr status 

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

Выполнение bzr pull не должно было уничтожить любую работу - как я ее понимаю, она должна просто потерпеть неудачу, если локальная ветвь имеет незафиксированные изменения.

+0

Да, это обычный рабочий процесс, но в этом случае статус показал чистое рабочее дерево, хотя мой код отсутствовал. 'bzr heads' показал мертвую голову, из которой я слился в свои потерянные изменения. –

+0

Не знал о мертвых головах, поэтому я кое-что узнал! – thomasrutter

2

Если все остальное не удается, вы можете попробовать спросить на канале IRC на базаре.

Go there now * и блуждать по каналу #bzr. Там обычно есть люди, и они обычно полезны.

** Это веб-интерфейс freenode. Если вы еще не использовали IRC, вы создаете свой собственный псевдоним, выбираете канал #bzr и не нуждаетесь в авторизации (пока ваш ник уникален). *

+0

Спасибо! Я действительно поехал туда раньше, но никто не был вокруг. Это место очень полезно! Затем стало утро в Европе, и люди проснулись и ответили на мой вопрос (который я расскажу после написания). –

Смежные вопросы