Хранение отдельных именованных ответвлений в подвижном, не имея необходимость объединять их

    void f(String[] first, String[] second) {
    String[] both = new String[first.length+second.length];
    for(int i=0;i<first.length;i++)
        both[i] = first[i];
    for(int i=0;i<second.length;i++)
        both[first.length + i] = second[i];
}

Этот работает без знания каких-либо других классов / библиотек и т. Д. Он работает для любого типа данных. Просто замените String на что-нибудь вроде int, double или char. Это работает довольно эффективно.

7
задан Praveen Angyan 24 July 2009 в 13:27
поделиться

4 ответа

Перечитав раздел об именованной ветвящейся разработке в книге Mercurial, я ' Я пришел к выводу, что лично для меня лучше всего иметь отдельные общие репозитории, по одному для каждой ветви. У меня была бесплатная учетная запись на bitbucket.org, поэтому я пытался заставить себя использовать только один общий репозиторий, что и создало проблему.

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

3
ответ дан 6 December 2019 в 11:51
поделиться

Используйте hg push -f , чтобы принудительно создать новую удаленную головку.

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

  • Мы с вами проверяем ревизию 100 именованной ветки «X».
  • Вы фиксируете локально и нажимаете.
  • Я фиксирую локально и нажимаю .

Теперь ветка X в удаленном репозитории выглядит так:

--(100)--(101)
     \
      \---------(102)

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

11
ответ дан 6 December 2019 в 11:51
поделиться

Вы писали:

Я обнаружил, что Mercurial настаивает только на ОДНОЙ голове находясь в удаленном репозитории.

Как вы думаете, почему?

Из справки для hg push :

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

Если вы знаете, что намеренно создаете новый заголовок в удаленном репозитории, а это желательно, используйте флаг -f.

2
ответ дан 6 December 2019 в 11:51
поделиться

Я пришел из git, ожидая того же. Кажется, что это один из подходов к простому нажатию на верхнюю часть.

hg push -r tip

1
ответ дан 6 December 2019 в 11:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: