¿Tubería (un parche en mi portapapeles) a "git apply"?

¿Tubería (un parche en mi portapapeles) a "git apply"?

Tengo un parche copiado en mi portapapeles de OSX (desde ssh). Me pregunto si hay alguna manera de escribir un comando para usar mi portapapeles, en lugar de crear manualmente un archivo de parche.

Respuesta1

macOS tiene los comandos pbcopyy pbpastepara acceder al portapapeles:

pbpaste | git apply



Tenga en cuenta que, si bien git applyacepta parches a través de stdin, no todos los comandos lo hacen. La alternativa en esas situaciones sería:

pbpaste > /tmp/patch && annoyingprogram /tmp/patch && rm /tmp/patch

Si está utilizando el shell Bash, esto también podría funcionar (o no):

annoyingprogram <(pbpaste)

Respuesta2

El foco de la pregunta es MacOS, pero para Linux también puedes usar:

xsel --clipboard --input | git apply

o

xclip -selection clipboard -o | git apply

información relacionada