Как я могу обновить файл в моей рабочей директории файлом из другой ветки? - PullRequest
0 голосов
/ 14 сентября 2009

Я работаю в ветке Feature, а другой разработчик завершил слияние своей ветки Feature2 с Default. Я хотел бы просто перетащить один из файлов из текущей ветви по умолчанию в мою ветку, прежде чем объединить мою функцию (поскольку она еще не завершена).

Ответы [ 2 ]

4 голосов
/ 14 сентября 2009

Mercurial работает в наборах изменений, а не в файлах, поэтому вы не можете использовать для этого традиционные функции pull / push.

Вы можете использовать:

hg cat -r Feature2 path/to/thefile > path/to/thefile

чтобы получить копию измененного файла. Или используйте:

hg revert -r Feature2 path/to/thefile

, который делает то же самое. Вы также можете «экспортировать» и «импортировать», используя -I, чтобы включить только этот файл, но нет смысла создавать новый набор изменений для одного файла.

Когда позже вы объединитесь в Default, идентичные файлы будут сливаться чисто.

1 голос
/ 23 февраля 2012

трансплантат (Hg v2.0.2) позволяет выборочно копировать изменения из других веток в текущую ветвь.

hg graft [OPTION]... REVISION...

This command uses Mercurial's merge logic to copy individual changes from
other branches without merging branches in the history graph. This is
sometimes known as 'backporting' or 'cherry-picking'. By default, graft
will copy user, date, and description from the source changesets.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...