Perbezaan antara garpu dan cawangan

Perbezaan antara garpu dan cawangan

Kami hidup di dunia di mana kerjasama mengatasi segala -galanya, terutama dalam konteks pengekodan. Sama ada anda baru memulakan perjalanan anda, menulis kod yang cukup kompleks, atau bekerja dengan pasukan, anda lebih cenderung menggunakan salah satu alat yang paling banyak digunakan untuk pengekodan kolaboratif, GitHub.

GitHub, dengan lebih daripada 100 juta repositori, sudah pasti tidak.1 platform hosting kod di luar sana. Perkara pertama yang perlu difahami ketika bekerja dengan Git adalah pengurusan fail dan folder dalam repositori. Selain dari struktur hierarki seperti pokok, GitHub menawarkan beberapa ciri yang luar biasa untuk membawa yang terbaik untuk penyemak imbas anda. Sebahagian daripada ciri -ciri ini termasuk cawangan, forking, pengklonan, dan lain -lain.

Kami melihat dua mekanisme git untuk lebih memahami bagaimana mereka sesuai dengan keseluruhan naratif.

Apa itu garpu?

Jadi, anda menggunakan GitHub buat sementara waktu sekarang? Setiap sekarang dan kemudian, ada masa ketika anda ingin mengerjakan projek orang lain atau menyumbang sesuatu. Mungkin kadang -kadang anda ingin mengusahakan projek di mana anda bukan pemilik atau kolaborator. Dalam situasi seperti mana anda tidak mempunyai akses tolak ke projek yang sedia ada, anda mempunyai pilihan untuk mengadakan repositori.

Jadi, apa itu garpu? Garpu tidak lain hanyalah salinan repositori dan anda dapat mengusahakan projek orang lain tanpa menjejaskan projek. Oleh itu, forking pada dasarnya bermakna membuat salinan repo di akaun github anda tanpa perlu bersusah payah menambah pengguna sebagai kolaborator yang membolehkan mereka menolak akses. Anda boleh menjalin projek, menolaknya, dan menyumbang perubahan kembali ke repositori asal melalui apa yang dikenali sebagai permintaan tarik.

Apa itu cawangan?

Cawangan di git sama seperti cabang pokok. Cawangan adalah sebahagian besar git dan mungkin salah satu ciri terbaik git. Apabila anda membuat repositori baru, apa yang sebenarnya anda lakukan ialah membuat cawangan induk dan ketika anda membuat komitmen, anda hanya berkomitmen untuk cawangan induk ini. Cawangan induk ini biasanya mewakili versi kod yang stabil dan ini akan menjadi kod yang dikeluarkan atau diterbitkan.

Jadi, inilah sebabnya anda mungkin tidak mahu mencuba ciri baru atau kod baru di cawangan induk ini. Jadi, jika anda ingin menambah ciri baru ke aplikasi anda, anda perlu membuat beberapa jenis persekitaran terpencil untuk mencuba ciri -ciri baru dan jika ini berfungsi, anda boleh meneruskan dan menggabungkannya ke cawangan induk.

Ini bercabang adalah semua; ia adalah fungsi git yang pada dasarnya membuat salinan kod, yang membolehkan anda membuat perubahan pada salinan tertentu dan kemudian menggabungkan perubahan kembali ke cawangan induk.

Perbezaan antara garpu dan cawangan

Apakah maksud cawangan garpu vs cawangan

- Cawangan mungkin salah satu ciri asas yang terdapat dalam sistem kawalan versi yang paling moden. Cawangan di Git adalah persekitaran terpencil untuk menambah, mengubah suai atau memadam sebahagian daripada kod tanpa mengacaukan kod utama projek.

Cawangan adalah untuk mewujudkan satu lagi perkembangan dalam projek tanpa menjejaskan cawangan utama atau repositori. Forking, sebaliknya, adalah untuk membuat klon repositori di akaun github anda tanpa menjejaskan repositori utama.

Garpu tidak lain hanyalah salinan duplikat projek orang lain, sedangkan cawangan hanyalah versi repositori.

Jadi apakah fungsi garpu vs cawangan

- Forking secara fungsional sama dengan cawangan dalam sistem kawalan versi lain, tetapi dalam Git, cawangan adalah ciri yang sama sekali berbeza yang berdasarkan analogi yang sama yang melibatkan pokok. Secara semulajadi, tidak ada perbezaan asas antara kedua -dua, kecuali cawangan biasanya adalah operasi pengklonan dalam Git yang dilaksanakan pada repositori tunggal.

Forking, sebaliknya, adalah operasi pengklonan di Git yang dilaksanakan di seluruh tahap repositori. Forking mencipta salinan penuh repositori asal tanpa menjejaskan repositori utama dan salinan duduk di akaun anda sedangkan cawangan membuat cawangan untuk merangkum perubahan anda.

Bagaimana dengan tujuan Fork vs Cawangan?

- Apabila anda ingin bekerja atau menyumbang kepada projek orang lain, anda membuat salinan peribadi repositori yang bertindak seperti jambatan antara repo utama dan salinannya.

Salinan peribadi ini adalah apa yang kita panggil garpu. Oleh itu, tujuan forking di Git adalah untuk memperbaiki projek orang lain dengan menambahkan beberapa ciri atau fungsi baru kepada repo yang ada. Cawangan git, sebaliknya, bertindak sebagai petunjuk kepada gambar perubahan.

Oleh itu, apabila anda ingin membuat beberapa perubahan pada kod, anda mengalihkan dari asas kod asal dengan membuat cawangan supaya anda dapat bekerja dengan bebas tanpa mempengaruhi kerja pemaju lain dalam pasukan.

Garpu vs. Cawangan: Carta Perbandingan

Ringkasan garpu vs. Cawangan

Jadi secara ringkas, setiap kali anda membuat salinan repositori, anda membuat garpu dan keseluruhan tindakan dilihat sebagai projek.

Sekiranya anda ingin mengubah suai atau menambah kod ke projek, sama ada projek solo anda sendiri atau projek sumber terbuka yang besar, anda mungkin akan membuat cawangan, yang secara khusus akan menyimpan semua kod tersebut.

Cawangan adalah operasi git yang pada dasarnya membuat salinan kod di mana setiap cawangan mewakili satu salinan kod. Dengan cara ini, anda boleh mengubah suai salinan peribadi anda dan kemudian jika ia berfungsi, gabungkan perubahan anda kembali ke cawangan induk. Oleh itu, secara fungsional, forking dan cawangan agak serupa tetapi dengan niat yang berbeza.