2016-09-10 8 views
1

Мы используем Mercurial на Bitbucket.Bitbucket/Mercurial: запрос тестового вытягивания перед слиянием

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

Как я могу сначала проверить вещи в запросе на растяжение, прежде чем интегрироваться в основной репозиторий. Я нашел solution, но это для Git на Bitbucket.

[UPDATE] Снимок экрана, который показывает, что для Mercurial интерфейс не обеспечивает правильную ссылку для pull/update. Он показывает только всплывающую подсказку.

enter image description here

ответ

0
  1. Оба VCS использовать то же самое (не Bitbucket в SCM-специфических) идею специальных URL-адресов для PullRequests
  2. Git-решение может быть легко принят в Hg заменой GIT-Lingua (и сущности) соответствующими эквивалентами Hg. А именно:

    • стр.1 - как
    • p.2-3 - hg pull URL/OF/PR (или pull -u при необходимости/у вас нет THG или postpull = update в THG /)

в результате вы получите расходящееся дерево истории, добавленное к вашему репо (как анонимная ветка к вам, основная линия или новая именованная ветка), а новый tip укажет на самый верхний набор изменений в PR, который вы можете проверить | проверить | тест

+0

Я обновил вопрос на скриншоте, который показывает, что URL-адрес не отображается в строке состояния, как говорится в руководстве/руководстве. – Alex

+0

@Alex - см. Https://confluence.atlassian.com/bitbucket/work-with-pull-requests-223220593.html#Workwithpullrequests-Mercurialcommandlineexample –

+0

Я знаю, какие команды использовать, но кажется, что если вилка является частной, у вас есть теперь URL (и не доступен для этого URL) как минимум для репозиториев Mercurial. – Alex

1

Кажется, что прямо сейчас (13 сентября 2016 года) на Bitbucket, если кто-то частным образом разветвил ваш ртутный репозиторий и создал запрос на вытягивание, вы (владелец оригинального репозитория) не сможете вытащить изменения из этого запроса на тягу и THEN для обновления вашего репозитория.

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

На данный момент я решил это, запросив доступ к частной вилке.

0

У меня была такая же проблема, и на основе информации, полученной из here, существует возможное обходное решение. Вы скачиваете PR как патч, а затем применить его на месте:

curl -u [user]:[password] https://bitbucket.org/api/2.0/repositories/[group]/[project]/pullrequests/[number]/patch -L -o pr.patch 
hg import pr.patch --no-commit 

Не идеальное решение, но это может сделать работу для некоторых случаев применения.