BitBucket Сравнение ветвей с использованием REST API - PullRequest
1 голос
/ 19 марта 2020

Я работаю над утилитой java для создания запросов извлечения из кода вместо использования веб-страницы.

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

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

Если есть способ cURL, это также будет работать.

Спасибо

1 Ответ

0 голосов
/ 19 марта 2020

Вы можете использовать Diff API следующим образом:

GET https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/diff/{spec} 

Пример:

https://api.bitbucket.org/2.0/repositories/osrf/sdformat/diff/default..4_to_5

Из официальной документации:

Создает необработанный diff в стиле git для отдельного коммита (переданного по первому родительскому элементу) или revspe c из 2 коммитов (например, 3a8b42. .9ff173, где первый коммит представляет источник, а второй фиксирует пункт назначения). В случае последнего (diffs revspe c) вычисляется трехсторонний diff, или diff слияния. Это показывает изменения, внесенные левой ветвью (в нашем примере 3a8b42) по сравнению с правой веткой (9ff173). Это эквивалентно слиянию левой ветви с правой веткой, а затем вычислению различий коммита слияния с его первым родителем (правой веткой). Это соответствует тому же поведению, что и запросы на получение, которые также показывают этот стиль 3-way, или diff слияния.

Это работает для сравнения коммитов, тегов и ветвей

...