Saya membuat repositori Git lokal baru:
~$ mkdir projectname
~$ cd projectname
~$ git init
~$ touch file1
~$ git add file1
~$ git commit -m 'first commit'
Apakah ada perintah git untuk membuat repo jarak jauh baru dan mendorong komit saya ke GitHub dari sini? Saya tahu ini bukan masalah besar untuk hanya menyalakan browser dan menuju ke Buat Gudang Baru , tetapi jika ada cara untuk mencapai ini dari CLI saya akan senang.
Saya membaca sejumlah besar artikel tetapi tidak ada yang saya temukan menyebutkan cara membuat repo jarak jauh dari CLI menggunakan perintah git. Artikel bagus Tim Lucas Menyiapkan repositori remote git baru adalah yang paling dekat yang saya temukan, tetapi GitHub tidak menyediakan akses shell .
sumber
curl -F 'login=username' -F 'token=API Token' https://github.com/api/v2/yaml/repos/create -F name=reponame
. Token API Anda dapat ditemukan di situs GitHub, klik Pengaturan Akun , cari Informasi Administratif dan Token API (string panjang 32 karakter).Perintah CLI untuk github API v3 (ganti semua kata kunci CAPS):
sumber
~/.bash_history
. Saya sarankan ganti-u 'USER:PASS'
dengan-u 'USER'
, kemudian curl akan meminta kata sandi Anda secara interaktif.curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO", "private":"true"}'
git config --global alias.gh-create '!sh -c "curl -u \"USERNAME\" https://api.github.com/user/repos -d \"{\\\"name\\\":\\\"$1\\\"}\"" -'
curl https://api.github.com/user/repos?access_token=myAccessToken -d '{"name":"REPO"}'
. :-)Ini dapat dilakukan dengan tiga perintah:
(diperbarui untuk API Github v3)
Penjelasan dari perintah-perintah ini ...
Buat repo github
Tentukan tempat untuk mendorong
Dorong repo lokal ke github
sumber
Jika Anda menginstal alat Hub defunkt yang sangat baik , maka ini menjadi semudah
git create
Dalam kata-kata penulis, " hub adalah pembungkus baris perintah untuk git yang membuat Anda lebih baik di GitHub. "
sumber
hub
! Juga berguna, adalahhub
- atau sepertihub
biasanya alias untukgit
...git fork
, yang membuat garpu repo untukpwd
repo kloning yang Anda masuki ... Yay.Langkah sederhana (menggunakan
git
+hub
=> GitHub ):Instal Hub ( GitHub ).
brew install hub
go get github.com/github/hub
jika tidak (memiliki Go juga):
Pergi ke repo atau membuat satu kosong:
mkdir foo && cd foo && git init
.Jalankan:,
hub create
ini akan menanyakan tentang kredensial GitHub untuk pertama kalinya.Pemakaian:
hub create [-p] [-d DESCRIPTION] [-h HOMEPAGE] [NAME]
Contoh:
hub create -d Description -h example.com org_name/foo_repo
Kemudian komit dan dorong seperti biasa atau centang
hub commit
/hub push
.Untuk bantuan lebih lanjut, jalankan:
hub help
.Lihat juga: Mengimpor repositori Git menggunakan baris perintah di GitHub.
sumber
Ada permata github resmi yang, saya pikir, melakukan ini. Saya akan mencoba menambahkan lebih banyak informasi ketika saya belajar, tetapi saya baru saja menemukan permata ini, jadi saya belum tahu banyak.
UPDATE: Setelah mengatur kunci API saya, saya dapat membuat repo baru di github melalui
create
perintah, namun saya tidak dapat menggunakancreate-from-local
perintah, yang seharusnya mengambil repo lokal saat ini dan membuat remote yang sesuai di github.Jika ada yang memiliki wawasan tentang ini, saya ingin tahu apa yang saya lakukan salah. Sudah ada masalah yang diajukan .
UPDATE: Saya akhirnya berhasil ini. Saya tidak yakin bagaimana cara menghasilkan kembali masalah ini, tetapi saya baru mulai dari awal (menghapus folder .git)
Sekarang baris ini akan membuat repo jarak jauh dan bahkan mendorongnya, tapi sayangnya saya tidak berpikir saya bisa menentukan nama repo yang saya inginkan. Saya ingin itu disebut "dotfiles" di github, tetapi permata gh hanya menggunakan nama folder saat ini, yang merupakan "jason" karena saya berada di folder rumah saya. (Saya menambahkan tiket meminta perilaku yang diinginkan)
Perintah ini, di sisi lain, memang menerima argumen untuk menentukan nama repo jarak jauh, tetapi itu dimaksudkan untuk memulai proyek baru dari awal, yaitu setelah Anda memanggil perintah ini, Anda mendapatkan repo jarak jauh baru yang melacak repo lokal dalam subfolder yang baru dibuat relatif terhadap posisi Anda saat ini, keduanya dengan nama yang ditentukan sebagai argumen.
sumber
Untuk Dengan Cepat Membuat Repositori Jarak Jauh dengan Menggunakan Bash Shell
Sulit untuk mengetikkan kode lengkap setiap kali repositori dibuat
curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO"}' git remote add origin [email protected]:USER/REPO.git git push origin master
Pendekatan yang lebih mudah adalah:
githubscript.sh
githubscript.sh
fileNB Berikut
$1
adalahrepository name
yang dilewatkan sebagaiargument
saat menjalankanscript
GantiYOUR_GITHUB_USER_NAME
sebelum menyimpan script.Tetapkan izin yang diperlukan untuk
script
file tersebutchmod 755 githubscript.sh
Sertakan direktori skrip dalam file konfigurasi lingkungan.
nano ~/.profile; export PATH="$PATH:$HOME/Desktop/my_scripts"
Juga atur alias untuk menjalankan file githubscript.sh.
nano ~/.bashrc; alias githubrepo="bash githubscript.sh"
Sekarang memuat ulang
.bashrc
dan.profile
file di terminal.source ~/.bashrc ~/.profile;
Sekarang untuk membuat repositori baru yaitu
demo
:githubrepo demo;
sumber
git remote add origin [email protected]:YOUR_GITHUB_USER_NAME/$1.git;
menjadigit remote add origin https://github.com/YOUR_GITHUB_USER_NAME/$1.git;
Untuk pengguna, yang tidak menggunakan kunci SSH.Berdasarkan jawaban lain oleh @Mechanical Snail, kecuali tanpa menggunakan python, yang saya temukan sangat berlebihan. Tambahkan ini ke Anda
~/.gitconfig
:sumber
Tidak, Anda harus membuka browser minimal sekali untuk membuat Anda
username
di GitHub, setelah dibuat, Anda dapat memanfaatkan API GitHub untuk membuat repositori dari baris perintah, mengikuti perintah di bawah ini:Sebagai contoh:
sumber
git remote add origin https://github.com/github-username/repo-name.git
untuk menautkan proyek lokal Anda ke github. Sebagai contoh, perintahnya akan terlihat seperti ini:git remote add origin https://github.com/arpitaggarwal/command-line-repo.git
Untuk pengguna dengan otentikasi dua faktor, Anda dapat menggunakan solusi bennedich, tetapi Anda hanya perlu menambahkan header X-Github-OTP untuk perintah pertama. Ganti CODE dengan kode yang Anda dapatkan dari penyedia otentikasi dua faktor. Ganti USER dan REPO dengan nama pengguna dan nama repositori, seperti yang Anda lakukan dalam solusinya.
sumber
Saya menulis skrip bagus untuk Gitter yang disebut ini menggunakan API REST untuk GitHub dan BitBucket:
https://github.com/dderiso/gitter
BitBucket:
GitHub:
-c
= buat repo baru-r
= penyedia repo (g = GitHub, b = BitBucket)-n
= beri nama repo-l
= (opsional) atur bahasa aplikasi dalam reposumber
Saya telah membuat alias Git untuk melakukan ini, berdasarkan jawaban Bennedich . Tambahkan yang berikut ke Anda
~/.gitconfig
:Untuk menggunakannya, jalankan
dari mana saja di dalam repositori lokal, dan masukkan kata sandi Github Anda saat diminta.
sumber
curl: (22) The requested URL returned error: 401 Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib64/python3.2/subprocess.py", line 488, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['curl', '-u', 'myusername', 'https://api.github.com/user/repos', '-d', '{"name": "reponame"}', '--fail']' returned non-zero exit status 22
Yang Anda butuhkan adalah hub . Hub adalah pembungkus baris perintah untuk git. Telah dibuat untuk berintegrasi dengan git asli menggunakan alias. Ia mencoba memberikan aksi github ke dalam git termasuk membuat repositori baru.
sumber
Untuk Rubyists:
masukkan nama pengguna dan pw seperti yang diminta
Sumber: Elikem Adadevoh
sumber
Untuk semua pengguna Python 2.7. *. Ada pembungkus Python di sekitar API Github yang saat ini ada di Versi 3, yang disebut GitPython . Cukup instal menggunakan
easy_install PyGithub
ataupip install PyGithub
.The
Repository
docs objek yang di sini .sumber
Untuk petunjuk tentang cara membuat token, buka di sini Ini adalah perintah yang akan Anda ketikkan (pada tanggal jawaban ini. (Ganti semua kata kunci CAPS):
Setelah Anda memasukkan kata sandi Anda, Anda akan melihat yang berikut yang berisi token Anda.
Anda dapat mencabut token Anda kapan saja dengan pergi ke sini
sumber
Untuk alasan rep, saya tidak dapat menambahkan ini sebagai komentar (di mana lebih baik pergi dengan jawaban bennedich ), tetapi untuk baris perintah Windows, berikut adalah sintaks yang benar:
curl -u YOUR_USERNAME https://api.github.com/user/repos -d "{\" name \ ": \" YOUR_REPO_NAME \ "}"
Ini bentuk dasar yang sama, tetapi Anda harus menggunakan tanda kutip ganda (") alih-alih tunggal, dan keluar dari tanda kutip ganda yang dikirim dalam parameter POST (setelah flag -d) dengan garis miring terbalik. Saya juga menghapus tanda kutip tunggal di sekitar nama pengguna saya, tetapi jika nama pengguna Anda memiliki spasi (mungkin?) mungkin perlu tanda kutip ganda.
sumber
Disclamier: Saya penulis proyek open source
Fungsionalitas ini didukung oleh: https://github.com/chrissound/Human-Friendly-Commands dasarnya adalah skrip ini:
sumber
Personal Access Token
. (Cara lama menambahkannya melalui?access_token=${ACCESSTOKEN}
tidak lagi berfungsi.Menemukan solusi ini yang saya sukai: https://medium.com/@jakehasler/how-to-create-a-remote-git-repo-from-the-command-line-2d6857f49564
Pertama-tama Anda harus membuat Token Akses Pribadi Github
Buka ~ / .bash_profile atau ~ / .bashrc di editor teks favorit Anda. Tambahkan baris berikut di dekat bagian atas file Anda, di mana sisa variabel yang diekspor adalah:
export GITHUB_API_TOKEN=<your-token-here>
Di suatu tempat di bawah, dengan fungsi bash Anda yang lain, Anda dapat menempelkan sesuatu yang mirip dengan yang berikut:
Sekarang, setiap kali Anda membuat proyek baru, Anda dapat menjalankan perintah
$ new-git awesome-repo
untuk membuat repositori jarak jauh publik baru di akun pengguna Github Anda.sumber
Dengan antarmuka baris perintah baru resmi Github :
Lihat detail dan opsi tambahan dan instruksi instalasi .
Misalnya, untuk menyelesaikan alur kerja git Anda:
sumber
inilah perintah git awal saya (mungkin, aksi ini terjadi
C:/Documents and Settings/your_username/
):sumber
Saya baru-baru tahu tentang create-github-repo . Dari readme:
Install:
Pemakaian:
Atau:
sumber
buat repositori baru di baris perintah
dorong repositori yang ada dari baris perintah
sumber