Подтвердить что ты не робот

Bitbucket: отправить запрос на перенос через командную строку?

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

Пример использования: $ git-req username

Вот такой script для Github: http://pastebin.com/F9n3nPuu

Есть ли один для Bitbucket?

4b9b3361

Ответ 1

Bitbucket с ним RESTful API 2.0 поддерживает управление тянуть запросы без интерфейса. В CLI вы можете запросить его с помощью CURL. Эта более старая версия документации имеет более подробные сведения о интерфейсе.

Получить данные запроса на получение с помощью CURL

Получить полные данные о конкретном запросе на растяжение:

$ curl --user s3m3n:bbpassword https://bitbucket.org/api/2.0/repositories/s3m3n/reponame/pullrequests/4

Взамен я получаю JSON с полной информацией о моем запросе на тяну # 4 (дважды введите свое имя пользователя, пароль и повторите команду).

Создайте новый запрос на разрыв с помощью RESTClient

Чтобы создать новый запрос на перенос, нам нужно предоставить много данных с помощью команды POST ниже, как она выглядит в моем RESTClient:

RESTClient Firefox

После обстрела Bitbucket показывает запрос на выгрузку немедленно:

Bitbucket screenshot

Создать новый запрос на растяжение с помощью CURL

Вы все равно можете создать один и тот же запрос на растяжение с помощью одного лайнера:

$ curl -X POST -H "Content-Type: application/json" -u s3m3n:bbpassword https://bitbucket.org/api/2.0/repositories/s3m3n/reponame/pullrequests -d '{ "title": "Merge some branches", "description": "stackoverflow example", "source": { "branch": { "name": "choose branch to merge with" }, "repository": { "full_name": "s3m3n/reponame" } }, "destination": { "branch": { "name": "choose branch that is getting changes" } }, "reviewers": [ { "username": "some other user needed to review changes" } ], "close_source_branch": false }'

Инструмент просмотра REST (прекращено)

Если вы хотите протестировать все возможные методы API, перейдите в инструмент браузера REST в Bitbucket. Он покажет вам все возможные запросы, возвращая ваши реальные данные репо.

Ответ 3

Я не был доволен ответами в этой теме, поэтому я создал для него пакет:

https://www.npmjs.com/package/bitbucket-pr

Инструкции:

npm я -g bitbucket-pr

... Перейдите в папку, в которой вы хотите создать запрос на перенос...

bitbucket-pr

Ответ 4

Пробовал и тестировал:

  1. Создайте токен доступа, нажав здесь.

  2. Сохраните уникальный идентификатор токена, добавьте его после "Значок несущей в заголовке".

Например: "Авторизация: носитель MDg4MzA4NTcfhtrhthyt/Thyythyh"

Полный образец JSON здесь:

Шаг 1, чтобы ввести данные и необходимые заголовки

  1. Попробуйте запустить его. Шаг 2

  2. Выход на BitBucket, вы сможете увидеть запрос на вытягивание Конечный вывод

Синтаксис командной строки:

curl -i -X POST    -H "Authorization:Bearer MDg4MzA4NTk/TlMSS6Ea"    -H "X-Atlassian-Token:no-check"    -H "Content-Type:application/json"    -d '{"description":"1. Changes made 2. Changes made 3. Hello hanges","closed":false,"fromRef":{"id":"refs\/heads\/branch","repository":{"name":"From Repository ","project":{"key":"ProjectName"},"slug":"From Repository "}},"state":"OPEN","title":"Merge changes from branch to master","locked":false,"reviewers":[],"open":true,"toRef":{"id":"refs\/heads\/master","repository":{"name":"RepoName","project":{"key":"ProjectName"},"slug":"RepoName"}}}'  'https://bitbucket.agile.com/rest/api/1.0/projects/projectName/repos/repoName/pull-requests'