Mengembangkan software dengan menggunakan aplikasi source code management (SCM) emang enak. Kami, developer SENAYAN Library Management System (SLiMS) pake git buat source code versioningnya. Asiknya pake git dibandingkan dengan aplikasi SCM lain adalah git menerapkan model ter-distribusi, tidak centralize seperti cvs. Asyiknya lagi pake git, kita ga harus terkoneksi ke server, kita bisa pake lingkungan hard disk lokal untuk buat branch-branch dari project kita.
Saya ga akan ngebahas cara make git disini, tapi saya ngebahas bagaimana kalau kita mau push dan pull request dari server repository git di internet, tapi kepentok sama proxy jaringan dan firewall yang biasanya cuman ngebolehin port 80 atau 3182.
Tapi itulah keindahan dunia open source, "That's The Beauty of Open Source", udah ada aplikasi yang bisa bantu kita tunneling data dari git, yang by default pake protokol SSL. aplikasi command line ini namanya Corkscrew, dan tersedia untuk semua varian GNU/Linux, UNIX, BSD, Mac OSX dan MS Windows (tapi mesti install Cygwin dulu, HAHAHHAHAHA!!! EMANG ENAKK!!!!). Apa pulak "Corkscrew" ini? ngutip langsung dari websitenya :
"Corkscrew is a tool for tunneling SSH through HTTP proxies."
Versi terakhir ketika tulisan ini diketik dan dipikirkan adalah versi 2.0.
Buat make Corkscrew, caranya gampang banget, kalo ga bisa dibilang susah :D, cukup download source code-nya dan kemudian compile deh pake compiler C favorit anda hehehheeheee..... Kalau anda pake GNU/Linux, biasanya gcc by default ude keinstall, kalo enggak yang nasib, hehheheee.... becanda! kalo ga ada gcc ya install lah dari repo distro anda :)). Step instalasinya setelah download kira-kira seperti ini :
- Buka console/terminal kesayangan anda (pliss, jangan buka DOS atau Command Prompt!!)
- Extract file hasil download Corkscrew pake perintah: tar xvzf corkscrew-2.0.tar.gz
- Masuk ke dalam direktori hasil ekstract: cd corkscrew-2.0
- Jalankan perintah berikut secara berurutan:
./configure --prefix=/usr/local
make
sudo make install
Setelah instalasi Corkscrew berhasil, maka langkah selanjutnya adalah mengkonfigurasi ssh agar bisa tunneling SSL lewat proxy. Buka file yang namanya "config", yang ada di folder ".ssh" di home directory user. Misalnya home directory saya di "/home/dicarve" maka berarti letaknya ada di "/home/dicarve/.ssh/". Kalo file "config" belom ada.......... ya dibuatlah pake text editor, pake vi, pake vim, pake emacs, pake nano (halahhhh). Edit file config tersebut dan isikan kira-kira seperti ini :
Host gitproxy
User git
HostName ssh.github.com
Port 443
ProxyCommand /usr/local/bin/corkscrew alamat-atau-no-IP-proxy port-proxy %h %p
IdentityFile /home/dicarve/.ssh/id_dsa
Jangan lupa di-save!! :D
Setelah semua itu selesai, maka nanti ketika kita mau pull atau push data ke repository server git, misalnya SLiMS di repo-kan di github/slims, perintah git yang kita lakukan bukannya begini:
git pull git@github.com:slims/s3st13.git master
Tapi jadi begini:
git pull git@gitproxy:slims/s3st13.git master
atau kalo mau push
git push git@gitproxy:slims/s3st13.git master
0 Komentar