Persediaan pelayan Git
Dalam bab sebelumnya, gudang jauh kami menggunakan projek awam Github adalah percuma, tetapi jika anda tidak mahu orang lain melihat projek anda, anda perlu membayar.
Pada masa ini kita perlu membina pelayan Git sendiri sebagai gudang persendirian.
Seterusnya kami akan menggunakan Centos sebagai contoh untuk membina pelayan Git.
1. Pasang Git
$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum install git
Seterusnya Buat kumpulan pengguna git dan pengguna untuk menjalankan perkhidmatan git:
$ groupadd git $ adduser git -g git
2. Buat log masuk sijil
Kumpulkan kunci awam semua pengguna yang perlu log masuk. Kunci awam terletak dalam fail id_rsa.pub , import kunci awam kami ke dalam fail /home/git/.ssh/authorized_keys, satu setiap baris.
Jika fail itu tidak wujud, ciptanya:
$ cd /home/git/ $ mkdir .ssh $ chmod 700 .ssh $ touch .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys
3 Mulakan repositori Git
Mula-mula kita pilih direktori sebagai. repositori Git. Dengan mengandaikan ia adalah /home/gitrepo/w3cschoolcc.git, masukkan arahan dalam direktori /home/gitrepo:
$ cd /home $ mkdir gitrepo $ chown git:git gitrepo/ $ cd gitrepo $ git init --bare w3cschoolcc.git Initialized empty Git repository in /home/gitrepo/w3cschoolcc.git/
Perintah di atas Git mencipta gudang kosong pada pelayan biasanya berakhir dengan .git. Kemudian, tukar pengguna kepunyaan gudang kepada git:
$ chown -R git:git w3cschoolcc.git
4 Klonkan gudang
$ git clone git@192.168.45.4:/home/gitrepo/w3cschoolcc.git Cloning into 'w3cschoolcc'... warning: You appear to have cloned an empty repository. Checking connectivity... done.
192.168.45.4 ialah IP pelayan di mana Anda perlu menukarnya ke IP perkhidmatan Git anda sendiri.
Dengan cara ini, pemasangan pelayan Git kami selesai Seterusnya, kami boleh melumpuhkan pengguna git untuk log masuk melalui shell Ini boleh dilakukan dengan mengedit fail /etc/passwd. Cari baris yang serupa dengan yang berikut:
git:x:503:503::/home/git:/bin/bash
dan tukarnya kepada:
git:x:503:503::/home/git:/sbin/nologin