¿Puedes emitir solicitudes de extracción desde la línea de comando en GitHub?

Resuelto Andrew Johnson asked hace 14 años • 12 respuestas

Parece que tienes que interactuar con github.com para iniciar una solicitud de extracción. ¿Es esto así?

Andrew Johnson avatar Oct 28 '10 04:10 Andrew Johnson
Aceptado

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.

kanaka avatar Oct 27 '2010 21:10 kanaka

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 .

Zensaburou avatar Dec 06 '2014 19:12 Zensaburou

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.
Flov avatar Aug 14 '2012 01:08 Flov

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 hubpaquete oficial de github:

sudo apt-get install hub

o

brew install hub 

entonces

hub pull-request [-focp] [-b <BASE>] [-h <HEAD>]
hobs avatar Feb 18 '2011 20:02 hobs

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.

Creación de cli/cli pr: https://i1.wp.com/user-images.githubusercontent.com/10404068/74261506-35df4080-4cb0-11ea-9285-c41583009e6c.png?ssl=1

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 ghpara usar su editor preferido con gh config set editor [editor].
  • Configure ghde forma predeterminada SSH con gh 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
VonC avatar Feb 12 '2020 21:02 VonC