¿Cómo copyr dos ID de compromiso dentro de Git Log?

Situación:

Estoy usando zsh (oh-my-zsh). Cuando estaba usando Bash , pude desplazar el git log para poder copyr y pegar los ID de confirmación para otras operaciones.

Es probable que haya tantos commit para este repository. Ahora cada vez que uso git log in zsh , parece saltar a otra window, así que solo puedo pasar una identificación de confirmación a la vez y no puedo ingresar ningún command dentro de esa window, excepto q .

Lo que estoy haciendo actualmente es copyr las identificaciones de los commits a textpad y prepararlos para un uso posterior.

Pregunta:

¿Hay alguna manera en que pueda hacer que el logging de git muestre todo el histroy en la misma window que otro command? Al igual que en Bash . O ¿Hay alguna forma de poder copyr dos ID de confirmación en onece?


enter image description hereenter image description hereenter image description here

Para hacer que git log command de git log no sea interactivo:

 git --no-pager log 

o, canalizarlo a gato como:

 git log | cat 

También puede usar -N, que limita la salida a solo las últimas N inputs:

(en este ejemplo, las últimas 2 inputs)

 git --no-pager log -2 

Para search el logging de compromiso para el text dado, puede usar el command grep integrado de git como:

 git --no-pager log --grep='My commit msg' 

Una solución diferente que funciona en algunas shells, y debería funcionar en la suya (ya que también estoy usando oh-my-zsh):

  1. Ingrese el localizador de git log y copie su primera identificación de compromiso
  2. Cópialo, deja el buscapersonas ( q )
  3. Comience a escribir su command git, pegue la identificación, por ej.

     git diff f6a8d92c 
  4. Presiona Ctrl + q para 'suspender' el command tipeado pero no enviado en la terminal. Se irá y puedes ejecutar un command diferente.

  5. Ejecute el git log para ingresar nuevamente el logging, copie la otra ID, déjelo con q .
  6. Ahora, el command previamente suspendido debe volver a aparecer en el indicador (aparece siempre después del siguiente command finalizado, que era el git log ). Puede volver a suspenderlo si lo desea presionando Ctrl + q .
  7. Pegue la segunda ID para crear el command completo.

Espero que puedas seguir los pasos, si no, por favor dime dónde falla. Si el acceso directo de suspensión no funciona, tal vez sea porque su caparazón lo tiene en otro lugar o no lo admite. La function se denomina aparentemente "línea de inserción".