Menginstal Git dan Apache HTTP Server:
Paket Git dan Apache tersedia di repositori paket resmi Ubuntu. Jadi, Anda dapat dengan mudah menginstalnya dengan manajer paket APT.
Pertama, perbarui cache repositori paket APT dengan perintah berikut:
$ sudo apt update
Cache repositori paket APT harus diperbarui.
Sekarang, instal Git dan Apache dengan perintah berikut:
$ sudo apt install git apache2 apache2-utils
Sekarang, tekan kamu lalu tekan
Git dan Apache harus diinstal.
Konfigurasi Apache HTTP Server untuk Git:
Sekarang, aktifkan Apache mod_env, mod_cgi, mod_alias dan mod_rewrite modul dengan perintah berikut:
$ sudo a2enmod env cgi alias menulis ulang
Modul Apache yang diperlukan harus diaktifkan.
Sekarang, buat direktori baru /var/www/git untuk menyimpan semua repositori Git dengan perintah berikut:
$ sudo mkdir /var/www/git
Sekarang, buat konfigurasi situs Apache baru /etc/Apache2/sites-available/git.konf untuk Git dengan perintah berikut:
$ sudo nano /etc/Apache2/sites-available/git.konf
Sekarang, ketik baris berikut di file konfigurasi:
ServerAdmin webmaster@localhost
SetelEnv GIT_PROJECT_ROOT /var/www/git
AturEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /usr/lib/git-core/git-http-backend/
Alias /git /var/www/git
Opsi +ExecCGI -MultiViews +SymLinksIfOwnerMatch
AllowOverride Tidak Ada
Membutuhkan semua diberikan
DocumentRoot /var/www/html
Pilihan Indeks FollowSymLinks MultiViews
AllowOverride Tidak Ada
Membutuhkan semua diberikan
ErrorLog $APACHE_LOG_DIR/error.catatan
Peringatan Level Log
CustomLog $APACHE_LOG_DIR/akses.log gabungan
File konfigurasi akhir terlihat sebagai berikut:. Sekarang, simpan file konfigurasi dengan menekan
Sekarang, nonaktifkan konfigurasi situs Apache default dengan perintah berikut:
$ sudo a2dissite 000-default.konf
Konfigurasi situs default harus dinonaktifkan.
Sekarang, aktifkan konfigurasi situs Git dengan perintah berikut:
$ sudo a2ensite git.konf
Konfigurasi situs Git harus diaktifkan.
Sekarang, restart server Apache HTTP dengan perintah berikut:
$ sudo systemctl restart apache2
Untuk mem-bootstrap repositori Git baru yang dapat diakses melalui server HTTP Apache, Anda harus menjalankan beberapa perintah. Anda tidak ingin melakukan hal yang sama berulang-ulang hanya untuk membuat repositori Git baru. Jadi, saya memutuskan untuk menulis skrip shell untuk tujuan itu.
Pertama, buat skrip shell baru /usr/local/bin/git-create-repo.SH dengan perintah berikut:
$ sudo nano /usr/local/bin/git-create-repo.SH
Sekarang, ketikkan baris kode berikut di skrip shell.
#!/bin/bashGIT_DIR="/var/www/git"
REPO_NAME=$1
mkdir -p "$GIT_DIR/$REPO_NAME.git"
cd "$GIT_DIR/$REPO_NAME.git"
git init --bare &> /dev/null
sentuh git-daemon-export-ok
kait cp/pasca-pembaruan.contoh kait/pasca-pembaruan
git konfigurasi http.paket terima benar
git update-server-info
chown -Rf www-data:www-data "$GIT_DIR/$REPO_NAME.git"
echo "Repositori Git '$REPO_NAME' dibuat di $GIT_DIR/$REPO_NAME.git"
Setelah Anda mengetikkan baris-baris ini, skrip shell akan terlihat sebagai berikut:. Sekarang, simpan file dengan menekan
Sekarang, tambahkan izin eksekusi ke skrip shell dengan perintah berikut:
$ sudo chmod +x /usr/local/bin/git-create-repo.SH
Sekarang, buat repositori Git baru uji di root proyek Git /var/www/git menggunakan git-create-repo.SH skrip shell sebagai berikut:
$ sudo git-create-repo.tes sh
Repositori Git uji harus diciptakan.
Untuk mengakses repositori Git, Anda memerlukan alamat IP server HTTP Git.
$ ip aSeperti yang Anda lihat, alamat IP dalam kasus saya adalah 192.168.21.208. Ini akan berbeda untukmu. Ganti dengan milikmu mulai sekarang.
Sekarang, Anda dapat mengkloning uji Repositori Git sebagai berikut:
$ git klon http://192.168.21.208/git/tes.git
Repositori Git uji harus dikloning.
Sekarang, mari tambahkan komit baru ke uji Repositori Git.
$cd tes/$ echo "Halo Dunia" > halo
$ git tambahkan .
$ git commit -m 'komit awal'
Sekarang, unggah perubahan ke uji Repositori Git di server sebagai berikut:
$ git push asalSeperti yang Anda lihat, perubahan diunggah dengan baik.
Mengonfigurasi Otentikasi Pengguna:
Di bagian ini, saya akan menunjukkan kepada Anda cara mengonfigurasi otentikasi pengguna pada repositori Git di server.
Pertama, edit git.konf file konfigurasi situs sebagai berikut:
$ sudo nano /etc/Apache2/sites-available/git.konf
Sekarang, tambahkan bagian berikut di file konfigurasi.
AuthType Dasar
AuthName "Verifikasi Git"
AuthUserFile /etc/Apache2/git.paswd
Memerlukan pengguna yang valid
Sini, /etc/apache2/git.paswd adalah file basis data pengguna.
File konfigurasi akhir akan terlihat sebagai berikut:. Sekarang, simpan file dengan menekan
Sekarang, buat file database pengguna baru /etc/apache2/git.paswd dan tambahkan pengguna baru (katakanlah shovon) ke file database sebagai berikut:
$ sudo htpasswd -c /etc/apache2/git.passwd shovon
Sekarang, ketikkan kata sandi baru untuk pengguna baru dan tekan
Ketik ulang kata sandi yang sama dan tekan
Pasangan kata sandi pengguna harus ditambahkan ke database.
Sekarang, restart server Apache HTTP dengan perintah berikut:
$ sudo systemctl restart apache2
Sekarang, jika Anda mencoba mengkloning uji repositori lagi, Anda akan diminta untuk mengautentikasi seperti yang Anda lihat pada tangkapan layar di bawah ini.
Setelah Anda mengautentikasi menggunakan nama pengguna dan kata sandi, Anda akan dapat mengakses repositori Git.
Bahkan ketika Anda mencoba untuk mendorong atau menarik dari repositori Git, Anda juga akan dimintai nama pengguna dan kata sandi.
Setelah Anda mengautentikasi, push/pull akan berfungsi.
Anda juga dapat mengatur basis data pengguna yang berbeda untuk repositori Git yang berbeda. Ini mungkin berguna untuk proyek di mana banyak orang bekerja bersama di repositori Git yang sama.
Untuk mengatur autentikasi repositori Git, pertama, edit file git.konf file konfigurasi situs sebagai berikut:
$ sudo nano /etc/Apache2/sites-available/git.konfSekarang, tambahkan baris berikut di file konfigurasi.
AuthType Dasar
AuthName "Verifikasi Git"
AuthUserFile /etc/Apache2/git.uji.paswd
Memerlukan pengguna yang valid
AuthType Dasar
AuthName "Verifikasi Git"
AuthUserFile /etc/Apache2/git.tes2.paswd
Memerlukan pengguna yang valid
Untuk setiap repositori Git uji dan tes2, Sebuah
File konfigurasi akhir akan terlihat sebagai berikut:. Sekarang, simpan file konfigurasi dengan menekan
Sekarang, Anda dapat membuat database pengguna yang diperlukan sebagai berikut:
$ sudo htpasswd -c /etc/apache2/git.uji.passwd USERNAME$ sudo htpasswd -c /etc/apache2/git.tes2.passwd USERNAME
Setelah selesai, restart server Apache HTTP dengan perintah berikut:
$ sudo systemctl restart apache2
Sekarang, setiap repositori Git harus memiliki kumpulan pengguna sendiri yang dapat mengaksesnya.
Jadi, begitulah cara Anda mengkonfigurasi Git Server dengan Apache HTTP Server di Ubuntu. Terima kasih telah membaca artikel ini.