giFTP, mencoba mengawinkan GIT dan FTP dengan Python

I love Python, itu sudah pasti. Namun ada saatnya saya harus kembali berurusan dengan PHP/WordPress dan FTP.

Namun ada satu hal yang saya tidak suka ketika menggunakan program FTP client, yaitu mereka tidak bisa membantu saya mengingat-ingat file mana saja yang baru saya ubah. Dan itu artinya satu cara yang paling aman adalah “Just upload them all! again? yes again!!” :D.

Apakah itu artinya masalah saya sudah terpecahkan? Tidak sama sekali, kalau cuma 5-10 file PHP sih tidak masalah, bagaimana kalau harus mengupload seluruh isi sebuah theme WordPress dengan segala file pendukungnya (css, images, fonts dll)? itu akan butuh waktu beberapa menit tergantung koneksi.

I love Git, version control yang saya pakai sehari hari adalah Git karena menurut saya ini sangat mudah untuk digunakan dan juga cepat.

Salah satu fitur yang ada di Git adalah “Diff”, yaitu sebuah command untuk mengetahui perubahan apa saja yang telah kita lakukkan kalau dibandingkan dengan commit sebelumnya.

Dan tiba-tiba, sebuah IDE menyambar dengan segera

” Kalau kemampuan Git-DIFF kita bisa gabungkan langsung dengan FTP, maka masalah saya diatas sepertinya bisa terpecahkan. Kita bisa tahu file mana saja yang berubah, dan dengan sebuah command sederhana upload bisa dilakukkan terhadap file tersebut saja “.

Sayapun mencoba Googling untuk mencari apakah ada solusi seperti itu, dan ternyata ada, namanya GIT-FTP (https://github.com/git-ftp/git-ftp, berbasis Shell script) namun sayangnya saya tidak sempat mencobanya karena setelah membaca docs nya, cara penggunaanya cukup mudah namun masih sedikit ribet sepertinya karena kita harus memasukkan username dan password FTP setiap kali mau upload. Males mode ON :D.

Hmm.. akhirnya saya memutuskan untuk memecahkan dengan cara saya sendiri, my way dan pastinya the Python way.

Dengan mengawinkan Library Git-Python dan FtpLib, module FTP dari python, saya membuat sebuah program sederhana untuk mencoba memecahkan permasalahan saya diatas tadi.

Tidak membutuhkan waktu lama untuk membuat prototype nya, setengah hari kerja sudah cukup untuk membuat versi basicnya, dan beberapa hari berikutnya untuk penyempurnaan dan Bug-fixing.

tadaaa…akhirnya lahirlah giFTP, sebuah program python sederhana yang mencoba menjembatani kesukaan saya bekerja dengan Git dan menghubungkannya dengan FTP.

2013-11-06-203800_446x446_scrot

Bagaimana cara kerjanya? sangat sederhana sekali:

Setiap sebuah command khusus yang saya ketikkan untuk upload dalam hal ini ”$ gtp –upload”, maka program ini akan membaca perubahan apa saja yang terjadi, dan hanya akan melakukkan upload untuk file itu saja.

Saya sendiri cukup terkejut melihat hasilnya, persis seperti apa yang saya butuhkan dan saya bayangkan. Dan sekarang ini menjadi salah satu tools yang harus ada ketika saya harus bekerja dengan FTP dan GIT lagi.

Bagi yang penasaran dengan giFTP ini, silahkan lihat-lihat di akun github saya ini (https://github.com/ekaputra07/giFTP), disana juga ada sedikit dokumentasi tentang cara penggunaanya dan fitur-fitur yang tersedia.

giFTP ini belum 100% selesai, masih terus saya coba kembangkan, namun untuk sementara ini sudah sangat berguna buat saya sendiri, siapa tahu juga berguna buat anda yang mencari solusi serupa.

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *