Las solicitudes de incorporación de cambios apiladas se basan en ramas de Git estándar y solicitudes de incorporación de cambios normales, por lo que puede optar por usar herramientas distintas de la gh stack CLI para su flujo de trabajo local. Si administra cadenas de ramas con otra herramienta, como Jujutsu (jj), Sapling o git-town, puede usar el gh stack link comando para abrir esas ramas como una pila en GitHub.
El comando gh stack link solo llama a la API GitHub para crear las pull requests apiladas; no crea ninguna rama de seguimiento local. Si una rama ya tiene una solicitud de incorporación de cambios abierta, la usa; de lo contrario, link usa la existente; de lo contrario, crea una solicitud de incorporación de cambios de borrador con la rama base correcta.
Vinculación de ramas como una pila
-
Cree la cadena de ramas localmente con la herramienta que prefiera. Por ejemplo, con Jujutsu:
jj new main -m "first change" jj bookmark create change1 --revision @ jj new -m "second change" jj bookmark create change2 --revision @ jj new -m "third change" jj bookmark create change3 --revision @ -
Empuje las ramas y vincúlelas como una pila, enumeradas de abajo a arriba.
gh stack link change1 change2 change3Esto publica las ramas, crea una solicitud de incorporación de cambios para cada una con la base correcta y las vincula como una pila en GitHub.
Agregar a una pila existente
Para agregar más ramas a una pila que creó con link, vuelva a ejecutar gh stack link con la lista completa de pull requests y ramas de la pila, de abajo a arriba. Puede hacer referencia a las solicitudes de incorporación de cambios existentes por número.
gh stack link 123 124 125 change4 change5
Establecimiento de una rama base o apertura de solicitudes de incorporación de cambios
De forma predeterminada, link tiene como destino la rama predeterminada del repositorio y crea solicitudes de extracción en borrador. Para cambiar este comportamiento:
- Utilice
--basepara especificar una rama de tronco diferente. - Usa
--openpara marcar las solicitudes de incorporación de cambios como listas para su revisión en lugar de como borrador.
gh stack link --base develop --open change1 change2 change3
Adoptar ramas para el seguimiento local completo
Si desea realizar un seguimiento completo de la pila local (para que pueda usar comandos como gh stack rebase, gh stack sync y navegación de pila), adopte las ramas existentes con gh stack init en su lugar y luego envíelas.
gh stack init change1 change2 change3
gh stack submit