tipos tag remove qué practices existen etiquetas crear commits commands best git automation gist

git - tag - Sube un archivo a un Gist con bash



qué tipos de etiquetas existen en git (3)

Ver https://github.com/defunkt/gist

Es un script de Ruby que se puede usar desde la línea de comando.

Normalmente pego informes de errores y registros en Gist en Github, para intercambiar información relevante de depuración de programación. Gist no tiene un botón para subir un archivo. Por lo tanto, a veces no es tan conveniente copiar y pegar los grandes informes de error en el texto de las pestañas como entrada.

¿Hay alguna manera de subir un archivo desde la línea de comandos a un nuevo Gist en su cuenta de Gist?

También sería útil crear un repositorio temporal de git para el archivo que subir, lo automatizaría en un script.

Al final me gustaría automatizar la publicación de información de depuración de mi proyecto de programación en github con un script bash


Aquí hay una solución que me funciona en Bash / Dash para crear una esencia anónima (muy probablemente no a prueba de balas):

# 0. Your file name FNAME=some.file # 1. Somehow sanitize the file content # Remove /r (from Windows end-of-lines), # Replace tabs by /t # Replace " by /" # Replace EOL by /n CONTENT=$(sed -e ''s//r//'' -e''s//t///t/g'' -e ''s/"///"/g'' "${FNAME}" | awk ''{ printf($0 "//n") }'') # 2. Build the JSON request read -r -d '''' DESC <<EOF { "description": "some description", "public": true, "files": { "${FNAME}": { "content": "${CONTENT}" } } } EOF # 3. Use curl to send a POST request curl -X POST -d "${DESC}" "https://api.github.com/gists"

Si necesita crear una esencia asociada con su cuenta github, (para autenticación básica) reemplace la última línea por:

curl -u "${GITHUB_USERNAME}" -X POST -d "${DESC}" "https://api.github.com/gists"

Para obtener esquemas de autenticación más avanzados, consulte https://developer.github.com/v3/#authentication.


Deberías poder crear un nuevo Gist, usando la API de GitHub para crear un Gist :

POST /gists

Encontrarás varias secuencias de comandos usando esta API, como:

  • esta función de emacs gist.el
  • este script php
  • este comando curl

Incluso el editor de GitHub, Atom.io, tiene una característica esencial .