Latest web development tutorials

repositori Git

Git tidak bahwa ada server pusat seperti SVN.

Kami sedang menggunakan ke Git perintah dijalankan secara lokal, Git jika Anda ingin berbagi kode Anda atau bekerja sama dengan pengembang lain. Anda harus menempatkan data pada satu server dapat terhubung ke pengembang lain.

Contoh ini menggunakan repositori Github sebagai remote, Anda dapat membaca pertama kami Github tutorial sederhana.


Menambahkan perpustakaan jarak jauh

Untuk menambahkan repositori jauh baru, Anda dapat menentukan nama yang sederhana, untuk referensi di masa mendatang, format perintah adalah sebagai berikut:

git remote add [shortname] [url]

Dalam contoh ini, repositori jauh Github sebagai contoh, jika Anda tidak dapat GitHub situs resmi https://github.com/ terdaftar.

Karena transmisi repositori Git lokal Anda dan GitHub repositori adalah melalui enkripsi SSH, jadi kita perlu mengkonfigurasi informasi otentikasi:

Gunakan perintah berikut untuk menghasilkan SSH Key:

$ ssh-keygen -t rsa -C "[email protected]"

[email protected] kembali ke kotak surat Anda terdaftar di github, maka Anda akan diminta untuk mengkonfirmasi jalan dan masukkan password, yang kita gunakan cara default untuk memasuki garis. Sukses akan menghasilkan .ssh folder ~ / bawah, dalam, id_rsa.pub terbuka, copy dalam kunci.

Kembali pada github, masukkan Account Settings (konfigurasi akun), pilih Keys SSH kiri, Add SSH Key, judul cukup isi disisipkan dihasilkan pada tombol komputer Anda.

Untuk memverifikasi sukses, masukkan perintah berikut:

$ ssh -T [email protected]
Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access.

Perintah berikut ini menunjukkan bahwa kita telah berhasil terhubung ke Github.

Setelah login dan klik "repositori New" seperti yang ditunjukkan di bawah ini:

Setelah nama Repository diisi w3cschool.cc (nama repositori), yang lain menyimpan pengaturan default, klik pada tombol "Create repository", kami berhasil membuat repositori Git baru:

Setelah dibuat, informasi berikut ini ditampilkan:

Informasi di atas kita bisa tahu dari gudang baru clone ini repositori, konten yang dapat didorong ke repositori lokal GitHub repositori.

Sekarang, ikuti petunjuk untuk GitHub, dan menjalankan perintah dalam gudang lokal:

$ ls
README
w3cschool本教程测试.txt
test.txt
$ git remote add origin [email protected]:tianqixin/w3cschool.cc.git
$ git push -u origin master
Counting objects: 21, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (21/21), 1.73 KiB | 0 bytes/s, done.
Total 21 (delta 4), reused 0 (delta 0)
To [email protected]:tianqixin/w3cschool.cc.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

Perintah berikut sesuai dengan salinan lokal Anda di Github berhasil menciptakan sebuah gudang baru, bukan perintah saya, karena nama pengguna Github kami tidak bukan nama yang sama, sama repositori.

Selanjutnya kita membuat kembali Github repositori, Anda dapat melihat file telah diupload ke Github:


Periksa perpustakaan jarak jauh saat ini

Untuk melihat apa repositori saat ini diatur, Anda dapat menggunakan perintah:

git remote
$ git remote
origin
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)

Dengan parameter -v, Anda juga dapat melihat alamat link yang sebenarnya untuk setiap alias ketika dijalankan.


Ekstrak repositori jauh

Git memiliki dua perintah yang digunakan untuk mengekstrak update repositori jauh.

1. Download cabang baru dengan data dari repositori jauh:

git fetch

Kebutuhan untuk melakukan setelah menjalankan git menggabungkan cabang berjarak ke dalam cabang Anda berada.

2, mengambil data dari sebuah gudang terpencil dan mencoba untuk menggabungkan ke dalam cabang saat ini:

git pull

perintah dijalankan di setiap cabang di git Anda mengambil segera setelah pelaksanaan cabang remote ke git merge.

Misalkan Anda telah mengkonfigurasi repositori jauh, dan Anda ingin mengambil data diperbarui, Anda dapat menjalankan git download yang [alias] memberitahu Git untuk mendapatkannya Anda tidak memiliki data, dan kemudian Anda dapat menjalankan git menggabungkan [alias] / [cabang pertama ] untuk setiap pembaruan pada server (dengan asumsi bahwa kali ini didorong ke server) ke dalam cabang Anda saat ini.

Kemudian kita klik "tutorial w3cschool tes .txt" di Github dan memodifikasinya online. Setelah kami memperbarui perubahan secara lokal.

$ git fetch origin
Warning: Permanently added the RSA host key for IP address '192.30.252.128' to the list of known hosts.
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From github.com:tianqixin/w3cschool.cc
   7d2081c..f5f3dd5  master     -> origin/master

Informasi di atas "7d2081c..f5f3dd5 induk -> asal / master" instruksi cabang master telah diperbarui, kita dapat menggunakan perintah berikut untuk memperbarui disinkronkan dengan lokal:

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)

Mendorong untuk repositori jauh

Mendorong cabang baru dan gudang data ke ujung distal dari perintah:

git push [alias] [branch]

Perintah di atas Anda [cabang] dorongan cabang menjadi [cabang] cabang, contoh [alias] terpencil repositori adalah sebagai berikut.

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)
bogon:w3cschoolcc tianqixin$ vim w3cschool本教程测试.txt 
bogon:w3cschoolcc tianqixin$ git push origin master
Everything up-to-date

Hapus repositori jauh

Menghapus repositori Anda dapat menggunakan perintah:

git remote rm [别名]
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)
$ git remote add origin2 [email protected]:tianqixin/w3cschool.cc.git
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)
origin2	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin2	[email protected]:tianqixin/w3cschool.cc.git (push)
$ git remote rm origin2
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)