Llevo unos meses usando magit y me gusta mucho. Pero una cosa que aún hago en una terminal es la recolección de cerezas.
¿Cuál es una manera simple de hacer esto?
Donde sea que vea una confirmación en un búfer Magit, puede seleccionarla moviendo el punto allí y luego escribiendo A A. También puede seleccionar múltiples confirmaciones a la vez: solo seleccione algunas confirmaciones usando la región y luego presione A A.
Es bastante fácil:
magit-status
b b
) a la rama que deseas elegir.l r l
) para encontrar las confirmaciones que desea elegir. Aquí selecciona las 2 ramas que desea comparar.A
para aplicar los cambios y también organícelos junto con el mensaje de confirmación. Si presiona a
, no se realizarán los cambios, sino que solo se aplicarán.No necesita hacer un rango de registro para elegir cereza. Cada vez que vea un registro de confirmación, puede presionar A
para seleccionarlo.
Después de actualizar magit a 2.1, el flujo de trabajo es diferente. Para ambos métodos, primero debe iniciar magit-status
.
Método A : Cherry Pick cambia de otra rama una por una
l
y luego o
para obtener una lista de otras ramas.A
seguido de A
nuevo.La línea de estado le mostrará qué confirmación seleccionó
p.ej feature/ABC~4
Presione Enter
para aplicar los cambios.
Método B : Cherry Elija todos los cambios de otra rama
A
para elegir el modo de selección de cereza.A
nuevamente para aplicar y confirmar los cambios. Presione a
para aplicar solo los cambios.Enter
.Personalmente, prefiero el método A, ya que puede manejar mejor los conflictos de fusión.
No uso la recolección de cerezas, sino ir ?
a magit-status
espectáculos y: Cherry
. Esto ejecuta el comando magit-cherry
, que le permite elegir una cabeza y una corriente arriba. Parece que esto es lo que quieres.
Puede escribir C-h r d m Magit RET
para leer el manual de Magit. Puede usar C-s cherry
un golpe repetido C-s
para buscar en el manual. Parece que la información está en la sección 23:
Una de las comodidades
git
es que puede decirle qué compromisos se han fusionado en sentido ascendente, pero no localmente y viceversa. El subcomando de Git para esto escherry
(no debe confundirse concherry-pick
). Magit tiene soporte para esto invocando lomagit-cherry
que está obligadoy
por defecto.Magit le preguntará primero por la revisión aguas arriba (que por defecto es la rama remota actualmente rastreada, si la hay) y la revisión principal (que por defecto es la rama actual) para usar en la comparación. Luego verá un nuevo búfer en el que todas las confirmaciones se enumeran con un marcador direccional, su revisión y la primera línea del mensaje de confirmación. El marcador direccional
+
indica una confirmación que está presente en sentido ascendente pero no en la cabecera o-
que indica una confirmación presente en la cabecera pero no en sentido ascendente.De esta lista, puede utilizar las combinaciones de teclas habituales para seleccionar confirmaciones individuales (
a
para seleccionar sin comprometer yA
para lo mismo más la confirmación automática). El búfer se actualiza automáticamente después de cada selección de cereza.
C-h i
lugar deC-h r d
. Esto lo llevará directamente al nivel superior de información.C-h i
lo llevará al último archivo de información que abrió, por lo que si presiono,C-h i m
podría estar mirando un menú de capítulos en SICP en lugar de un menú de todo. Golpeard
despuésC-h i
oC-h r
se asegurará de que estará en el directorio de información antes de golpearm
.M-x
package-install
RET
sicp
RET
:)