Github Workflow untuk berkontribusi di Poryek Open Source

Github saat ini sudah menjadi rumah bagi proyek-proyek open source.

Jutaan programmer dari seluruh dunia menaruh kodenya di sana.

Bahkan proyek open source seperti Linux, Cinnamon, Laravel, BlankOn, dll. menggunakan Github.

Bagaimana proyek-proyek itu digarap bersama?

Itulah yang akan kita pelajari pada artikel ini.

Kita akan belajar tentang Git dan Github workflow atau alur kerja Github untuk berkontribusi pada proyek open source.

Kita akan langsung melakukan kontribusi pada proyek “dummy” yang sudah saya siapkan.

Sebelumnya siapkan dulu alat-alat berikut:

  1. Akun Github;
  2. Git;
  3. Teks Editor.

Langkah-langkah Berkontribusi pada Proyek Open Source di Github

Ada beberapa langkah yang harus dilakukan untuk berkontribusi di Proyek open source:

1. Baca Aturan Berkontribusi

Jika kamu tertarik berkontribusi pada sebuah proyek di Github, pastikan membaca aturan kontribusi.

Pada aturan kontribusi, biasanya akan ada larangan dan tata cara berkontribusi yang harus dipatuhi bersama.

Aturan berkontribusi biasanya ditulis pada file CONTRIBUTING.md dan README.md.

Contoh aturan berkontribusi pada proyek Hugo:

Contoh Aturan Kontribusi

Apa yang akan terjadi bila saya tidak mengikuti aturan berkontribusi?

Bisa jadi kontribusimu akan ditolak oleh admin.

Karena itu, bacalah aturan berkontribusi dengan teliti dan seksama.

2. Fork & Clone Repository

Setelah kita selesai membaca aturan berkontribusi, langkah selanjutnya adalah melakukan fork repository ke akun kita.

Frok bisa kita artikan sebagai menyalin repository dari akun orang lain atau organisasi ke akun kita sendiri.

Nah untuk memprektek, saya sudah menyapkan proyek bernama belajar-git.

Silahkan buka proyek tersebut, lalu klik tombol Fork.

Fork Repository

Tunggu beberapa saat, repository sedang di-fork.

Forking repository

Setelah itu, akan ada repository baru bernama belajar-git di akun kita.

Hasil Fork

Sekarang repository belajar-git telah menjadi milik kita dan bebas melakukan apapun terhadapnya.

Selanjutnya silahkan clone (download) repository tersebut ke komputer lokal.

URL Clone repository

HTTPS:

git clone https://github.com/ardianta/belajar-git.git

SSH:

git clone [email protected]:ardianta/belajar-git.git

Saya biasanya menggunakan SSH, biar tidak memasukkan password saat melakukan push.

Clone repository ke Lokal

3. Lakukan Modifikasi

Setelah kita melakukan clone ke komputer lokal, selanjutnya silahkan buka dengan teks editor dan lakukan modifikasi.

Sebagai contoh, saya membukanya dengan VS Code.

Buka repository dengan teks editor VS Code

Buatlah beberapa perubahan dan simpan perubahan yang kamu lakukan dengan Git.

Lakulan commit terhadap apa yang kamu rubah.

Commit Perubahan

Perlu diperhatikan juga:

  • Gunakan pesan commit yang informatif dan mewakili apa yang sudah kamu ubah.
  • Hindari menggunakan git add . untuk melakukan commit ke semua file.

4. Push Kontribusimu

Setelah kita selesai melakukan perubahan dan commit, langkah berikutnya adalah melakukan push.

Push-nya ke mana?

Ya ke repository hasil fork tadi.

Repository yang kita clone dari Github, akan otomatis membuat remote bernama origin.

Untuk melihatnya, gunakan perintah git remote -v.

Alamat Remote

Alamat tujuan push dan fetch mengarah ke alamat repository di akun kita.

Silahkan melakukan push dengan perintah berikut.

git push origin master

Tunggulah beberapa saat…

Push Perubahan

Setelah selesai, coba lihat repository belajar-git di akun Github-mu.

Apakah berhasil di-push atau tidak?

Kalau berhasil, silahkan lanjutkan ke langkah berikutnya.

5. Membuat Pull Request

Pull Request adalah istilah yang bisa kita artikan sebagai permintaan untuk menggabungkan kode.

Kita sudah membuat perubahan di repository hasil fork, lalu ingin menggabungkan dengan repository sumber.

Maka kita harus membuat Pull Request.

Silahkan klik tombol New Pull Request pada repository belajar-git.

Membuat Pull Request baru

Setelah itu, Github akan melakukan komparasi.

Apakah ada kode yang bentrok atau tidak?

Kalau tidak ada yang bentrok biasanya akan muncul tulisan hijau “Able to merge”.

Selanjutnya silahkan klik tombol Create Pull Request.

Membuat Pull Request baru

Silahkan isi judul Pull Request dan pesan yang ingin disampaikan ke komunitas.

Pesan Pull Request baru

Setelah itu admin atau owner akan melakukan review kontribusimu.

Biasanya akan terjadi diskusi untuk membahas pull request yang telah kita buat.

Apakah akan ditolak atau diterima?

Kalau diterima, biasanya akan ada tulisan “Marged” berwarna ungu.

Pull Request diterima

Selesai.

Jika ingin berkontribusi lagi, pastikan repository lokal tetap terupdate dengan repository sumber.

Update bisa dilakukan dengan perintah git pull atau git fetch.

Pelajari caranya di sini: Bekerja dengan Remote Repository.

Akhir Kata…

Itulah langkah-langkah yang harus dilakukan untuk berkontribusi pada proyek open source di Github.

Sekecil apapun kontribusimu akan tetap dihargai oleh pemilik repo.

Namun, jangan kecewa apabila ditolak.

Mungkin saja kamu melanggar aturan atau perubahan yang kamu buat bentrok dan menciptakan banyak bugs.

Tetap semangat, dan…

Selamat berkontribusi di dunia open source.