Cara Mendapatkan Perubahan Dari Satu Cabang ke Cawangan Lain di Git

How Pull Changes From One Branch Another Git



Repositori git mengandungi satu atau lebih cawangan untuk menguruskan kod dengan cekap. Kadang kala, pengguna git perlu bekerjasama dengan beberapa cawangan secara serentak dan perlu beralih dari satu cabang ke cabang yang lain dengan perubahan yang dilakukan pada cabang sebelumnya ke cabang semasa sebelum melakukan. Tugas ini dapat dilakukan dengan menggunakan pelbagai cara di git. Perintah stash boleh digunakan dari terminal dan menggabungkan perintah dari GitHub Desktop untuk menarik perubahan dari satu cabang ke cabang lain dalam tutorial ini.

Prasyarat

1. Pasang GitHub Desktop
GitHub Desktop membantu pengguna git untuk melakukan tugas-tugas yang berkaitan dengan git secara grafik. Anda boleh memuat turun pemasang aplikasi ini untuk Ubuntu dengan mudah dari github.com. Anda harus memasang dan mengkonfigurasi aplikasi ini setelah memuat turun untuk menggunakannya. Anda juga boleh memeriksa tutorial memasang GitHub Desktop di Ubuntu untuk mengetahui proses pemasangan dengan betul.







2. Buat akaun GitHub
Anda perlu membuat akaun GitHub untuk memeriksa rupa repositori jauh setelah menerbitkan perubahan repositori tempatan.



3. Buat repositori tempatan
Anda harus membuat repositori tempatan untuk memeriksa arahan yang digunakan dalam tutorial ini.



Penggunaan arahan stash

Repositori tempatan bernama PHP2 telah digunakan dalam tutorial ini untuk menunjukkan cara menarik perubahan dari satu cabang ke cabang repositori yang lain. Buat fail bernama indeks.html di repositori. Buka terminal dan pergi ke folder repositori. Jalankan perintah berikut untuk memeriksa senarai cabang, beralih ke cabang induk, dan memaparkan status cabang.





cawangan $ git
$ git master checkout
status $ git

Output berikut akan muncul setelah melaksanakan perintah di atas. Output menunjukkan bahawa repositori mengandungi dua cabang, dan yang utama cawangan aktif pada mulanya. Setelah beralih ke tuan cawangan, output status menunjukkan bahawa cawangan semasa aktif dan indeks.html fail tidak dilacak.



Jalankan arahan berikut untuk melacak fail yang tidak dilacak dan periksa semula status git repositori.

$ git add index.html
status $ git

Output berikut akan muncul setelah melaksanakan perintah di atas. Output status menunjukkan bahawa indeks.html fail ditambahkan ke repositori tetapi perlu dilakukan.

Jalankan arahan berikut dan periksa status repositori git sekali lagi. Perintah `git stash` berfungsi seperti perintah` git komit`. Direktori kerja repositori akan dibersihkan setelah melaksanakan perintah ini.

$ git simpanan
status $ git

Output berikut akan muncul melaksanakan perintah di atas.

Setelah menjalankan perintah stash untuk cabang, jika pengguna git ingin menarik perubahan cabang ke cabang lain, ia dapat dilakukan dengan mudah dengan menggunakan perintah `git stash pop` yang berfungsi seperti perintah` git merge`. Jalankan arahan berikut untuk beralih ke yang utama cabang dan tarik perubahan dari tuan cawangan ke utama cawangan.

$ git checkout utama
$ git stash pop

Output berikut akan muncul setelah melaksanakan perintah di atas yang menunjukkan bahawa cabang semasa adalah utama dan juga indeks.html fail ditambahkan di cawangan ini.

Jalankan arahan berikut untuk melakukan tugas sebelumnya dengan mesej komit dan periksa statusnya sekali lagi.

$ git commit -m 'fail indeks ditambahkan'
status $ git

Output berikut akan muncul setelah melaksanakan perintah di atas. Output status menunjukkan bahawa pokok kerja bersih sekarang setelah melakukan.

Sekiranya perubahan repositori tempatan didorong ke repositori jauh, dan repositori jauh dibuka dari github.com, maka repositori akan kelihatan seperti gambar berikut.

Penggunaan arahan bergabung

Bahagian tutorial ini menunjukkan cara lain untuk menarik perubahan dari satu cabang ke cabang yang lain. Repositori tempatan bernama baca-fail telah digunakan di sini. Buat fail bernama read.php di lokasi repositori. Jalankan arahan berikut untuk beralih ke cabang induk, tambahkan fail read.php dan lakukan tugas. Perintah cabang akan memaparkan senarai cabang. Perintah checkout akan menukar cawangan menjadi master. Perintah status akan memaparkan status cawangan semasa. Perintah tambah akan menambah fail yang tidak dilacak di repositori. Perintah komit akan mengesahkan tugas.

cawangan $ git
$ git master checkout
status $ git
$ git tambah read.php
$ git commit -m 'Skrip baca ditambahkan'

Output berikut akan muncul setelah melaksanakan perintah di atas. Fail read.php telah ditambahkan ke cawangan induk repositori, dan tugas juga telah dilakukan.

Setelah menyelesaikan tugas di atas, jika perubahan dilakukan di tuan cawangan memerlukan pemindahan ke utama cawangan, kemudian penggabungan arahan boleh digunakan untuk melaksanakan tugas ini. Perintah penggabungan dapat digunakan dari terminal atau dengan menggunakan aplikasi GitHub Desktop. Cara menggunakan Desktop GitHub untuk menggabungkan cawangan telah ditunjukkan di bahagian tutorial ini. Buka repositori tempatan di GitHub Desktop. Buka kotak dialog senarai cawangan dengan mengklik senarai Cawangan daripada Pandangan menu dan pilih utama cabang sebagai cabang aktif. Sekarang, klik pada Bergabung ke cawangan semasa… daripada Cawangan menu. Pilih tuan cabang dari kotak dialog dan klik pada Gabungkan tuan menjadi yang utama butang untuk menarik perubahan tuan cabang ke yang utama cawangan. Anda boleh memadam tuan cawangan setelah menyelesaikan operasi penggabungan jika cawangan tidak memerlukan repositori.

Kesimpulannya

Dua cara berbeza untuk menarik perubahan dari satu cabang ke cabang lain telah ditunjukkan dalam tutorial ini menggunakan dua repositori tempatan demo. The simpanan dan pergi perintah git telah digunakan di sini untuk melakukan tugas. Desktop GitHub telah digunakan dalam tutorial ini untuk menunjukkan cara menggabungkan cawangan secara grafik.