Gue ga sengaja push ke branch master ketika ngantuk🫠

Hello gaes, gimana nih kabarnya? Aku yakin disini kebanyakannya udah pada tau tentang git dan github

Kalau belum tau gimana?

Simplenya git itu version control buat programmer memanage code mereka dan github adalah tempat (platform) buat nyimpen si code beserta version version dari code yg sudah dibuat. Dengan git dan github kita juga bisa kolaborasi dengan cara branching berdasarkan fitur lalu disatukan (di merge) dalam branch utama biasanya namanya adalah ‘main’ atau ‘master’

Dalam rangka mengerjakan tugas gits academy yang diadakan oleh smkdev dan pt gits indonesia aku dan teman teman peserta lainnya menggunakan github sebagai tempat pengumpulan tugas dengan catatan harus di push ke branch dengan nama masing masing, misal: hasban-fardani atau rafi-cahyadi

Nah suatu malam disaat orang normal udah tidur aku baru mau ngumpulin. Aku ikutin tutorialnya dan ya udah jalan kayak biasa. Tapii ‘bodohnya’ aku gatel ngeliat tulisan push yang ada di sidebarnya vscode yang padahal aku udah selesai push ke branch aku sendiri.

Akhirnya aku pencetlah si tombol push itu dan yah itu ternyata push buat ke masterr.

Akhh disitu panik banget sampe aku ngechat sama miscal kak sam buat minta maaf plus gimana caranya biar bisa balik lagi ke semula

Eitss tapi sebagai orang yang merasa bertanggung jawab aku cobalah buat nyari nyari sendiri ehhh aku nemu tuh namanya revert dan reset

Dan begonya lagi aku belum

Dan pas paginya Alhamdulillahnya kak sam ngechat

Udah aku beresin yahh.

Beuhh lega banget tuh ya udh deh aku tenang. Untungnya bukan aplikasi beneran yang skalanya gede. Kalau kejadian kayak gini di aplikasi dengan jutaan user bisa rugi jutaan miliaran bahkan triliunan karna asa naruh kode ke branch utama.

Contoh kasusnya bisa diliat baru baru ini yang dimana dunia geger karena Microsoft Windows tiba tiba serentak blue screen di banyak komputer komputer yang memegang posisi penting kayak di rumah sakit dan penerbangan. Wahh kacau balau banget itu sistemnya, 600 penerbangan terpaksa batal dan sistem pencatatan di rumah sakit jadi manual.

Yah walaupun Microsoft mungkin ga pake github tapi konsepnya sama, selain github ada juga gitlab, gitbucket dsb.

Oiya selain untuk kolaborasi git dan github bisa dipakai untuk CI CD (Continues Integration Continuous Deployment), dimana didalamnya akan ada proses testing dan integrasi dengan third party sampai proses build aplikasi.

Nah dalam case windows yang crash itu adalah karena CrowdStrike atau software antivirus melakukan update namun proses updatenya tidak secara berkala alias sekaligus sehingga ada beberapa testing yang mungkin saja terlewat, aku juga baca baca sedikit artikel bahwa pihak CrowdStrike sudah menyadarinya namun karna sudah terlanjur tersebar akhirnya mereka butuh waktu untuk memperbaikinya.

Setelah kejadian ini aku jadi paham kenapa branch main itu kadang di protect kayak harus ada yang accept dulu sebelum merge atau harus sesuai dulu pesan commit dan pull requestnya, yah tujuannya untuk mencegah hal yang tidak terduga seperti ga sengaja push ke main kayak gini.

aku juga jadi tau terkait git revert atau git reset buat mereset commit project ke versi tertentu dengan menggunakan hash commitnya

Terimakasih sudah membaca, semoga bisa bermanfaat