Bitbucket: ¿Enviar una solicitud de extracción a través de la línea de comandos?
Tengo que enviar muchas solicitudes de extracción, así que prefiero usar la línea de comandos bash que la interfaz web de bitbucket.
Ejemplo de uso: $ git-req username
Aquí está un script para Github: http://pastebin.com/F9n3nPuu
Hay uno para Bitbucket?
3 answers
Hay 2 repositorios en bitbucket que podrían ayudar:
El equipo Attlassiano tiene stash (ruby): https://bitbucket.org/atlassian/bitbucket-server-cli
Zhemao tiene bitbucket-cli (python): https://bitbucket.org/zhemao/bitbucket-cli
Ambos tienen la función pull request desde la línea de comandos.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-15 07:59:24
Bitbucket con su RESTful API 2.0 admite la administración de pull requests sin interfaz. En CLI puedes solicitarlo con CURL. Esta versión anterior de la documentación tiene mejores detalles de interfaz.
Obtener datos de solicitud de extracción con CURL
Para obtener datos completos sobre una solicitud de extracción específica:
$ curl --user s3m3n:bbpassword https://bitbucket.org/api/2.0/repositories/s3m3n/reponame/pullrequests/4
A cambio recibo JSON con información completa sobre mi pull request #4 (ponga su nombre de usuario dos veces, contraseña y reponame en el comando).
Crear nuevo pull request con RestClient
Para crear una nueva pull request necesitamos proporcionar una gran cantidad de datos con el comando POST, a continuación cómo se ve en mi RestClient:
Después de disparar Bitbucket muestra la solicitud de extracción inmediatamente:
Crear una nueva solicitud de extracción con CURL
Todavía puedes crear la misma pull request con un liner:
$ 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 browser tool (descontinuado)
Si quieres probar todo lo posible métodos de API hop to REST browser tool de Bitbucket. Le mostrará todas las solicitudes posibles mientras devuelve los datos de su repositorio real.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-13 06:39:33
No estaba muy satisfecho con las respuestas en este hilo, así que creé un paquete para ello:
Https://www.npmjs.com/package/bitbucket-pr
Instrucciones:
npm i -g bitbucket-pr
... Vaya a la carpeta donde desea crear una solicitud de extracción ...
bitbucket-pr
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-16 13:15:10