Apakah maksud git rebase?
git rebase bermaksud: mentakrifkan semula status repositori cawangan apabila menjalankan operasi rebase, git akan mengekstrak pengubahsuaian pada cawangan untuk diasaskan semula daripada nenek moyang yang sama bagi kedua-dua cawangan, dan kemudian pangkalan semula Mata cawangan; kepada komit terkini cawangan asas, dan akhirnya perubahan yang baru diekstrak digunakan pada bahagian belakang komit terkini cawangan asas.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Git 2.30.0, komputer Dell G3.
Git rebase, seperti namanya, adalah untuk mentakrifkan semula (semula) peranan titik permulaan (asas), iaitu, untuk mentakrifkan semula status repositori cawangan.
1. Gambar rajah nod penyerahan
Pertama, mari kita alami apa yang dilakukan oleh rebase melalui gambar rajah nod penyerahan yang ringkas
Dua cabang induk dan ciri, di mana ciri berada di titik penyerahan B Cawangan yang ditarik daripada induk
mempunyai komit M baharu pada induk dan dua komit baharu C dan D pada ciri
Pada masa ini, tukar kepada cawangan ciri , laksanakan arahan berikut, yang bersamaan dengan menggabungkan cawangan induk ke dalam cawangan ciri
git checkout feature git rebase master //这两条命令等价于git rebase master feature
Rajah berikut menunjukkan rajah nod komit selepas mengasingkan semula prinsip kerjanya:
- ciri: cawangan asas akan ditukar, cawangan semasa
- induk: cawangan asas, cawangan sasaran
Penjelasan rasmi: Apabila melakukan operasi pangkalan semula , Git akan mengekstrak pengubahsuaian pada cawangan yang akan diasaskan semula bermula daripada nenek moyang yang sama bagi kedua-dua cawangan, kemudian mengarahkan cawangan itu untuk diasaskan semula kepada komit terkini cawangan asas, dan akhirnya menggunakan pengubahsuaian yang baru diekstrak ke bahagian belakang komitmen terkini cawangan asas.
Jelaskan dengan contoh: Apabila melaksanakan git rebase master pada cawangan ciri, git akan mengekstrak pengubahsuaian pada cawangan ciri bermula daripada moyang sepunya B master dan featuer, iaitu, kedua-dua komit C dan D, ekstrak mereka mula-mula tiba. Kemudian arahkan cawangan ciri ke komit terkini cawangan induk, iaitu M. Akhir sekali, C dan D yang diekstrak disambungkan kepada M, tetapi proses ini adalah untuk memadamkan C dan D asal dan menghasilkan kandungan penyerahan C’ dan D’ yang baharu, tetapi id komit adalah berbeza. Sememangnya, ciri akhirnya menunjuk kepada D'.
Penjelasan popular (penting!) : rebase, rebase, boleh difahami secara langsung sebagai menukar pangkalan. Cawangan ciri ialah cawangan yang ditarik dari B cawangan induk, dan asas ciri ialah B. Dan jika induk mempunyai komit baharu selepas B, ia bersamaan dengan menggunakan komit baharu pada induk sebagai asas baharu cawangan ciri. Operasi sebenar adalah untuk menyimpan penyerahan ciri selepas B, kemudian padamkan penyerahan asal, kemudian cari lokasi penyerahan terbaharu induk, dan kemudian sambungkan penyerahan yang disimpan (nod baharu dengan id komit baharu), supaya asas cawangan ciri agak Yu menjadi M dan bukannya B asal.
Terdapat juga penjelasan yang sangat mudah. Kunci kepada perintah rebase sebenarnya adalah untuk memahami "base" git
2. Contoh penyerahan git sebenar
Rekod penyerahan dibina mengikut rajah di atas, seperti yang ditunjukkan dalam rajah di bawah: (ABM ialah garis cawangan induk, dan ABCD ialah garis cawangan ciri. Di sini, warna induk berubah dan bercabang Ini tidak menjejaskan pemahaman Ini bermakna dua Hanya dua baris untuk setiap cabang )
Pada masa ini, laksanakan git rebase master
pada cawangan ciri Selepas pangkalan semula selesai, ABCD ialah baris cawangan ciri asal , ABMC 'D' ialah baris cawangan ciri baharu, ABM ialah baris cawangan induk (tiada perubahan)
.
3. Senario penggunaan yang disyorkan
Terdapat begitu banyak perkara yang perlu dilakukan, tetapi ini sebenarnya perkara yang paling penting. Syarikat dan situasi yang berbeza mempunyai senario penggunaan yang berbeza, tetapi dalam kebanyakan kes perkara berikut disyorkan:
Gunakan rebase apabila menarik kod terkini daripada cawangan awam, iaitu git pull -r atau git pull -- Rebase, tetapi satu kelemahan ialah selepas rebase, saya tidak tahu cabang mana cawangan semasa saya mula-mula ditarik, kerana pangkalan telah berubah. (Jika anda menggunakan gabungan, akan ada rekod komit yang tidak bermakna "Gabung... kepada...")
Apabila menggabungkan kod ke cawangan awam, gunakan gabungan. (Jika anda menggunakan rebase, maka jika pembangun lain ingin melihat sejarah cawangan utama, ia bukan sejarah asal. Sejarah telah diusik oleh anda)
Disyorkan pembelajaran: "Tutorial Git》
Atas ialah kandungan terperinci Apakah maksud git rebase?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Git adalah sistem kawalan versi, dan GitHub adalah platform hosting kod berasaskan Git. Git digunakan untuk menguruskan versi kod dan menyokong operasi tempatan; Github menyediakan alat kerjasama dalam talian seperti Penjejakan Isu dan PullRequest.

Git dan GitHub bukan perkara yang sama. Git adalah sistem kawalan versi, dan GitHub adalah platform hosting kod berasaskan Git. Git digunakan untuk menguruskan versi kod, dan GitHub menyediakan persekitaran kerjasama dalam talian.

Untuk memuat turun projek secara tempatan melalui Git, ikuti langkah -langkah ini: pasang git. Navigasi ke direktori projek. Pengklonan Repositori Jauh menggunakan arahan berikut: Git Clone https://github.com/username/repository-name.git

GitHub tidak sukar untuk dipelajari. 1) Menguasai Pengetahuan Asas: GitHub adalah sistem kawalan versi berasaskan Git yang membantu mengubah perubahan kod dan pembangunan kolaboratif. 2) Memahami Fungsi Teras: Rekod Kawalan Versi Setiap Penyerahan, Menyokong Kerja Tempatan dan Penyegerakan Jauh. 3) Ketahui cara menggunakan: dari membuat repositori untuk menolak komitmen, menggunakan cawangan dan tarik permintaan. 4) Menyelesaikan masalah biasa: seperti gabungan konflik dan lupa untuk menambah fail. 5) Amalan Pengoptimuman: Gunakan mesej penyerahan yang bermakna, membersihkan cawangan, dan menguruskan tugas menggunakan papan projek. Melalui amalan dan komunikasi komuniti, lengkung pembelajaran Github tidak curam.

Langkah -langkah untuk mengemas kini kod git: lihat kod: klon git https://github.com/username/repo.git Dapatkan perubahan terkini: Git mengambil Perubahan Gabungan: Git Gabungan Asal/Master Push Change (Pilihan): Git Push Origin Master

Git Commit adalah arahan yang merekodkan fail perubahan kepada repositori git untuk menyelamatkan gambar keadaan semasa projek. Cara menggunakannya adalah seperti berikut: Tambahkan perubahan ke kawasan penyimpanan sementara Tulis mesej penyerahan ringkas dan bermaklumat untuk menyimpan dan keluar dari mesej penyerahan untuk melengkapkan penyerahan secara opsyen: Tambahkan tandatangan untuk log penyerahan Git Log untuk melihat kandungan penyerahan

Selesaikan: Apabila kelajuan muat turun git perlahan, anda boleh mengambil langkah -langkah berikut: periksa sambungan rangkaian dan cuba menukar kaedah sambungan. Mengoptimumkan Konfigurasi Git: Meningkatkan Saiz Penampan Pos (Git Config-Global Http.PostBuffer 524288000), dan mengurangkan had berkelajuan rendah (git config --global http.lowspeedlimit 1000). Gunakan proksi Git (seperti Git-Proxy atau Git-LFS-Proxy). Cuba gunakan klien Git yang berbeza (seperti sourcetree atau github desktop). Periksa perlindungan kebakaran

Pada resume anda, anda harus memilih untuk menulis git atau github berdasarkan keperluan kedudukan anda dan pengalaman peribadi. 1. Jika kedudukan memerlukan kemahiran git, sorot git. 2. Jika kedudukan nilai penyertaan komuniti, tunjukkan GitHub. 3. Pastikan untuk menerangkan pengalaman penggunaan dan kes -kes projek secara terperinci dan berakhir dengan ayat lengkap.
