¿Puedes emitir solicitudes de extracción desde la línea de comando en GitHub?
Parece que tienes que interactuar con github.com para iniciar una solicitud de extracción. ¿Es esto así?
ACTUALIZACIÓN : El comando hub ahora es un proyecto oficial de github y también admite la creación de solicitudes de extracción
ORIGINAL :
Parece algo particularmente útil para agregar al comando hub: http://github.com/defunkt/hub o la gema github: http://github.com/defunkt/github-gem
Sugiero presentar un problema con aquellos proyectos que lo soliciten. Los chicos de github son bastante receptivos.
Git ahora viene con un subcomando'git request-pull' [-p] <start> <url> [<end>]
Puedes ver los documentos aquí.
Puede que esto le resulte útil, pero no es exactamente igual a la función de GitHub .
Con el contenedor de línea de comandos de Hub , puedes vincularlo a git y luego puedes hacer
git pull-request
Desde la página de manual del hub:
git pull-request [-f] [TITLE|-i ISSUE|ISSUE-URL] [-b BASE] [-h HEAD]
Opens a pull request on GitHub for the project that the "origin" remote points to. The default head of the pull request is the current branch. Both base and head of the pull request can be explicitly given in one of the following formats: "branch", "owner:branch",
"owner/repo:branch". This command will abort operation if it detects that the current topic branch has local commits that are not yet pushed to its upstream branch on the remote. To skip this check, use -f.
If TITLE is omitted, a text editor will open in which title and body of the pull request can be entered in the same manner as git commit message.
If instead of normal TITLE an issue number is given with -i, the pull request will be attached to an existing GitHub issue. Alternatively, instead of title you can paste a full URL to an issue on GitHub.
Un hombre busca como...
man git | grep pull | grep request
da
git request-pull <start> <url> [<end>]
Pero, a pesar del nombre, no es lo que quieres. Según los documentos:
Genere una solicitud pidiendo a su proyecto ascendente que introduzca cambios en su árbol. La solicitud, impresa en la salida estándar, comienza con la descripción de la rama, resume los cambios e indica desde dónde se pueden extraer.
@HolgerJust mencionó que github cli hace lo que quieres:
gh pull-request [user] [branch]
Otros han mencionado el hub
paquete oficial de github:
sudo apt-get install hub
o
brew install hub
entonces
hub pull-request [-focp] [-b <BASE>] [-h <HEAD>]
Además de github/hub
, que actúa como proxy de Git , ahora (febrero de 2020) tienes cli/cli
:
Consulte " Mejore su experiencia en la línea de comandos: GitHub CLI ahora está en versión beta "
Crear una solicitud de extracción
Cree una rama, realice varias confirmaciones para corregir el error descrito en el problema y use gh para crear una solicitud de extracción para compartir su contribución.
Al usar GitHub CLI para crear solicitudes de extracción, también crea automáticamente una bifurcación cuando aún no tienes una, empuja tu rama y crea tu solicitud de extracción para fusionar tu cambio.
Y en abril de 2020: " GitHub CLI ahora admite solicitudes de extracción automáticas y configuración personalizada "
GitHub CLI 0.7 ya está disponible con varias de las mejoras más solicitadas a partir de los comentarios que nuestros usuarios beta han proporcionado.
Desde la última versión menor, 0.6, hay tres características principales:
- Configure
gh
para usar su editor preferido congh config set editor [editor]
.- Configure
gh
de forma predeterminada SSH congh config set git_protocol ssh
.
El protocolo predeterminado de Git es HTTPS.- Complete automáticamente el título y el cuerpo de una solicitud de extracción de sus confirmaciones con
gh pr create --fill
.
Entonces:
gh pr create --fill