С Mercurial возможно ли иметь ветку по умолчанию в одной оболочке и другую ветку "bugfix" в другой оболочке? - PullRequest
0 голосов
/ 10 ноября 2010

Поскольку кажется, что

hg up default

или

hg up bugfix

используется в одной оболочке Bash, тогда другая оболочка также автоматически переключается на эту ветвь, если hg branchраньше показывал, какая это ветка.(поэтому я думаю, что если он работает на сервере Ruby on Rails, вдруг код изменится на другую ветку)

Если использовать два отдельных клона, это можно сделать ... как если быдве ветки ... но это можно сделать с помощью функции ветвления hg?

Ответы [ 3 ]

5 голосов
/ 10 ноября 2010

Вы должны использовать два отдельных клона.

Подумайте об этом.Вы работаете над двумя разными версиями файла.Они отличаются по содержанию.Вы должны изменить файл, чтобы отразить одну из двух ветвей.Как один файл может иметь два разных содержимого одновременно (ваша идея с двумя оболочками)?

Другая аналогия: оболочка - это окно.Файл является объектом в комнате.Даже если у вас есть два окна, выходящие в одну и ту же комнату, нельзя, чтобы один объект в комнате был двумя разными вещами одновременно.Для этого создайте идентичную комнату по соседству, измените объект и прикрепите второе окно к клонированной комнате.

1 голос
/ 10 ноября 2010

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

Один рабочий каталог может быть только в одном месте в истории хранилища.

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

1 голос
/ 10 ноября 2010

Кажется, что разные оболочки работают в одном и том же каталоге репозитория. Это не будет работать, так как каталог, в котором происходит обновление, а не оболочка.

Таким образом, для этого вам действительно нужны две директории репозитория, то есть клоны.

Если эти каталоги находятся в одной файловой системе, это не будет стоить много времени или места, поскольку Mercurial оптимизирует этот случай с помощью жестких ссылок.

По крайней мере, если вы работаете в операционной системе, поддерживающей жесткие ссылки.

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