Konsep Lanjutan dalam Git: Meneroka Ciri dan Teknik Berkuasa

Rebasing

Rebasing membolehkan anda memasukkan perubahan dari satu cawangan ke cawangan lain dengan mengubah suai sejarah komit. Ia memainkan semula komit dari cawangan sumber ke cawangan sasaran. Ini menghasilkan sejarah komit yang lebih bersih dan lebih linear.

Contoh: Katakan anda mempunyai cawangan ciri yang dipanggil feature-branch dan anda ingin memasukkan perubahan terkini daripada main cawangan tersebut. Anda boleh menggunakan arahan berikut:

git checkout feature-branch  
git rebase main  

Ini akan menggunakan komit dari main cawangan ke feature-branch. Sebarang konflik perlu diselesaikan semasa proses asas semula.

 

Stashing

Penyimpanan membolehkan anda menyimpan perubahan semasa anda, yang belum bersedia untuk dilakukan, dan buat sementara waktu kembali ke direktori kerja yang bersih. Ini berguna apabila anda perlu beralih ke cawangan lain atau menggunakan ciri lain tanpa melakukan perubahan yang sedang anda lakukan.

Contoh: Katakan anda sedang mengusahakan cawangan ciri dan anda telah membuat beberapa perubahan, tetapi anda perlu bertukar ke cawangan lain. Anda boleh menggunakan arahan berikut untuk menyimpan perubahan anda:

git stash

selepas bertukar ke cawangan baharu, anda boleh menggunakan perubahan yang disimpan menggunakan:

git stash apply

 

Git Hooks

Git Hooks ialah skrip yang dicetuskan oleh peristiwa Git tertentu, seperti prakomit, pascakomit, pra-tekan, dsb. Ia membenarkan anda mengautomasikan tindakan tertentu atau menguatkuasakan peraturan tertentu dalam aliran kerja anda.

Contoh: Katakan anda ingin menjalankan linter pada kod anda sebelum melakukan. Anda boleh membuat skrip cangkuk prakomit yang mencetuskan linter dan menghalang komit jika terdapat sebarang ralat linting.

 

Git Submodule

Git Submodule membolehkan anda memasukkan repositori Git lain sebagai subdirektori dalam repositori utama anda. Ini berguna apabila anda mempunyai projek yang bergantung pada perpustakaan atau komponen luaran.

Contoh: Anda mempunyai projek yang memerlukan perpustakaan tertentu. Daripada menduplikasi kod perpustakaan dalam repositori anda, anda boleh menambahkannya sebagai submodul. Dengan cara ini, anda boleh menyimpan kod perpustakaan berasingan dan mengemas kininya dengan mudah apabila diperlukan.

 

Git Revert and Git Reset

Git Revert membatalkan komit sebelumnya dengan membuat komit baharu yang membuat asal perubahan yang dibuat dalam komit asal. Git Reset, sebaliknya, membolehkan anda mengalihkan penuding cawangan ke komit yang berbeza, dengan berkesan membuang komit daripada sejarah komit.

Contoh: Jika anda ingin membuat asal komit terakhir, anda boleh gunakan git revert HEAD untuk membuat komit baharu yang membuat asal perubahan yang dibuat dalam komit terakhir. Jika anda ingin membuang komit terakhir sepenuhnya, anda boleh gunakan git reset HEAD~1 untuk mengalihkan penuding cawangan kembali dengan satu komit.

 

Konsep lanjutan dalam Git ini menyediakan keupayaan berkuasa untuk mengurus repositori anda dengan berkesan. Memahami cara menggunakannya dan masa untuk menggunakannya akan meningkatkan aliran kerja dan pengurusan projek Git anda.