Soru Komut satırından yeni bir Githubistine bir şeyi nasıl pipetleyebilirim?


Henüz var mı bilmiyorum ama yapabilmeyi çok isterim:

$ cat mygist.js | gh new gist

Ve URL'yi döndürün (ve muhtemelen onu panoya kopyalayın / tarayıcıda açın).


25
2017-11-25 15:17


Menşei


Bu harika bir fikir =) Eğer mevcut değilse, zamanım olduğunda bunu yapmak için bir senaryo yazabilirim. - sampson-chen
Bu ortak görevi başarmanın gerçekten kolay bir yolu yoktur. - jacktrades


Cevaplar:


Bu gem deneyin: https://github.com/defunkt/gist

Benim için çalıştı ^ _ ^


22
2017-10-09 10:52



Bunu not et sadece bağlantıya verilen cevaplar cesaretsizdir, SO cevapları bir çözüm arayışının son noktası olmalıdır (zaman içinde bayat eğilimi olan referansların bir başka durağanlığı gibi). Lütfen bağlantıyı referans olarak tutarak, burada tek başına bir özet eklemeyi düşünün. - kleopatra
Yap koşmak gist --login herhangi bir yumruk yüklemeden önce. Bunu yapmamak, isminizi anonim bir kullanıcı olarak yükleyecektir. - Meredith


GitHub'ın, yöntemleri içeren basit bir REST API'sine sahip olması gibi görünüyor Gists oluşturma. Sadece eğlence için:

$ curl -X POST \
    --data-binary '{"files": {"file1.txt": {"content": "Hello, SO"}}}' \
    https://api.github.com/gists

Bu başarıyla oluşturuldu bu Gist. Başlaman için yeterli olduğunu düşünüyorum.


28
2017-11-25 15:43



yerine bir dosya adı kullanmanın bir yolu var mı "Hello, SO" Böylece dosyayı gist'e aktarabilir miyim? - kirill_igum
@kirill_igum: koyabilirsiniz $(cat /home/user/filename) yerine Hello, SO (ama etrafında çift tırnaklarını bırakın). Ayrıca, tüm tırnak işaretlerinin etrafındaki tek tırnakları çift tırnak işareti ile değiştirmeniz ve tüm çift tırnak işaretlerinden kurtulmanız gerekir. - atomictom
kullanma curl -u user:pass ... aynı zamanda da "siz" in sahibi olmanın garantisini alacak. - Peter V. Mørch


İşte bir dosya adı alır ve bunu bir gits yapar basit bir bash betik.

function msg() {
  echo -n '{"description":"","public":"false","files":{"file1.txt":{"content":"'
  awk '{gsub(/"/,"\\\""); printf "%s\\n",$0}' "$1"
  echo '"}}'
}

[ "$#" -ne 1 ] && echo "Syntax: gist.sh filename" && exit 1
[ ! -r "$1" ] && echo "Error: unable to read $1" && exit 2

msg "$1" | curl -v -d '@-' https://api.github.com/gists

FYI: Post-post ile vücut cevapları, bu yüzden eğer dosya büyükse, belki de cevabın sadece ilgili kısımlarını grep.


3
2017-07-25 19:57



Bunu yaparken "JSON ayrıştırma sorunları" 400 hatası alıyorum. - andreas-h
Görünüşe göre, sadece oneliner isyancıların bunu yaptım, yeni hatların da kaçması gerekiyor, güncellenmiş mesaj. - stt


Ronie'nin de dediği gibi, içeriğinizi yüklemek için terminalinizden kullanabileceğiniz bir gist komutu sağlayan bir gute gem var. https://gist.github.com/

Sadece a.rb içeriğini yüklemek için:

gist a.rb

Daha fazla bilgi http://defunkt.io/gist/


1
2018-05-05 09:27





Aynı isteği buldum https://www.npmjs.com/package/gistup ve depoyu https://github.com/CrandellWS/mkg çünkü geliştirici, o sırada kullanılan işletim sistemi olan Windows'u desteklemeyi istemedi. Böylece windows ve linux ve apple üzerinde çalışmak için npm paketini yeniden işledim ...

Tam kaynak GitHub'da kullanılabilir: https://github.com/CrandellWS/mkg

Kurulum npm ile basit

npm install -g mkg

Kullanım npmjs paket sayfasında belirtilmiştir: https://www.npmjs.com/package/gistup

Sadece bir kez yüklendikten sonra cd Her dizini bir gedik yapmak istediğiniz ... (hatırlatmak için Gists ile alt klasör yok)

ve komutu çalıştırın:

mkg

Ve yeni cesetinizi bir diktatörde açacak ... ek olarak oradan normal bir git gibi kontrol edebileceksiniz ... sadece alt klasör yok ...

https://stackoverflow.com/a/41233970/1815624


0