Mercurial HG тянуть HG вверх HG объединить головы бла-бла весь процесс не очень ясно - PullRequest
1 голос
/ 24 января 2012

Мы используем Kiln в качестве нашего ртутного сервера, и у меня есть три разработчика, работающих над одним репозиторием, и я часто сталкиваюсь с этой проблемой, и я не совсем уверен, что происходит.
Время от времени я буду делатьhg pull.
Затем, когда я запускаю hg up, я получаю следующее сообщение

abort: пересекает ветви (используйте 'hg merge' для объединения или используйте 'hg update -C', чтобы отменить изменения)

ОК, поэтому я запускаю hg merge и получаю

abort: невыполненные незафиксированные изменения (используйте hg status для просмотра списка изменений)

хорошо, поэтому я запускаю hg status, и я получаю что-то вроде этого

! Safemail 3.0\CSM3.0\AddinSetup\Release\AddinSetup.tmp 
! Safemail 3.0\CSM3.0\Outlook2007Addin\Outlook2007Addin_TemporaryKey.pfx

, не зная, что с этим делать.

Если я снова запускаю hg commit, он говорит, что никаких изменений.
Наконец, если я запускаю hg heads, я получаю

changeset:   51:daea74a29d5c
tag:         tip
parent:      49:b88e6e522672
user:        Rahul Chandran
date:        Mon Jan 23 13:30:54 2012 -0800
summary:     added login code

changeset:   50:cb6f6e1eec5e
parent:      46:d83431c322ad
user:        dthompson@Jabberwock.lan
date:        Mon Jan 16 22:10:11 2012 -0600
summary:     Adjusted Email-PDF formatting  

Очевидно, что я не из DSCS, и мне, вероятно, не хватает базового понимания того, что происходит.Любая помощь приветствуется.
Что я знаю, так это то, что код, который мой коллега зарегистрировал посредством push, не имеет ничего общего с моими изменениями.Я не ожидал бы подобного конфликта слияния или чего-то подобного в нераспределенной системе контроля версий.по сути, я испытываю некоторые затруднения с пониманием, что именно здесь происходит

1 Ответ

7 голосов
/ 24 января 2012

Проверьте справку для hg status.Он скажет вам, что ! означает:

  ! = missing (deleted by non-hg command, but still tracked)

Итак, вы удалили некоторые файлы, которые отслеживаются в вашем хранилище.Если вы не хотели отслеживать их в первую очередь (они выглядят хорошими .hgignore кандидатами), вы можете hg forget FILENAMES; hg commit их.Если вместо этого вы действительно хотите отслеживать их, вы можете hg revert FILENAMES их (чтобы вернуть их в рабочий каталог из своего хранилища.

Как только hg status согласится, что у вас нет незафиксированных изменений, вы сможетена hg merge.

Подумайте о том, чтобы потратить немного времени на чтение первых нескольких глав (бесплатной) книги о Mercurial. Эти основные понятия просты, когда они представлены правильно и в порядке, но ужасно разочаровывают, когда вы пытаетесь выбратьони по частям из поисков Google и вопросов переполнения стека. Это стоит 30 минут, чтобы сэкономить ваши часы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...