Artikel ini adalah sebahagian daripada siri "Advanced Git" kami yang berterusan. Tinggal untuk ansuran masa depan dengan mengikuti menara di Twitter atau melanggan surat berita mereka.
Rebase Interaktif: Kawan Terbaik Sejarah Git Anda
Interaktif Rebase adalah alat Git yang kuat, yang menawarkan pelbagai pilihan untuk menyempurnakan sejarah komit tempatan anda sebelum berkongsi perubahan dengan pasukan anda. Fikirkannya sebagai pisau tentera Swiss perintah git. Mari kita meneroka keupayaan dan aplikasi praktikalnya.
Rebase interaktif memberi anda kuasa untuk mengubah suai sejarah komit anda untuk organisasi dan kejelasan yang lebih baik. Tindakan utama termasuk:
Nota penting: Rebase interaktif menulis semula sejarah komit anda, memberikan ID hash baru kepada komitmen yang terjejas. Oleh kerana ID komit adalah pengenal penting (sha-1 checksums), ini mewujudkan komitmen yang sama sekali baru. Oleh itu, jangan sekali -kali menggunakan Rebase interaktif pada komitmen yang telah ditolak ke repositori jauh bersama. Melakukannya boleh mengganggu kerja rakan sekerja anda. Gunakannya untuk membersihkan sejarah tempatan anda sebelum menggabungkan dan menolak ke cawangan bersama.
Terlepas dari operasi tertentu (memadam, memesona, menggabungkan, dll.), Alur kerja tetap konsisten:
git log
untuk memeriksa sejarah projek anda sebelum bermula.Mari kita gambarkan dengan contoh:
Untuk komit yang paling terkini, git commit --amend
menawarkan penyelesaian yang lebih mudah. Ini membuka editor lalai anda untuk mengubahsuai mesej dan kandungan. Walau bagaimanapun, elakkan daripada meminda menolak komitmen .
Untuk melakukan yang lebih tua, gunakan Rebase Interaktif:
git rebase -i kepala ~ 3
Ini membuka editor yang menunjukkan tiga komitmen. Tukar pick
to reword
untuk mengubahsuai mesej. Simpan, tutup, dan edit mesej sekali lagi sebelum menyimpan dan keluar.
Untuk menggabungkan komitmen (misalnya, "7B2317CF Tukar struktur halaman" dan "6BCF266 OPTIMIZE MARKUP"), tentukan asas komit dan penggunaan:
git rebase -i kepala ~ 3
Tukar pick
untuk squash
pada komit kedua (menggabungkannya dengan yang di atasnya ). Jimat dan tutup. Tetingkap editor baru muncul untuk membuat mesej komit gabungan.
Petua Menara: Di Menara, Seret dan Drop berkomitmen untuk skuasy, atau klik kanan untuk mengedit mesej komit.
Gunakan kata kunci drop
untuk membuang komit:
drop 0023cdd tambah robots.txt mudah Pilih 2B504BE TOWELINES TOUNE UNTUK TENTANG DAN JUMLAH Pilih 6BCF266 mengoptimumkan struktur markup di halaman indeks
Sekiranya anda perlu membatalkan rebase interaktif, gunakan:
Git Rebase --abort
Ini meliputi hanya sebahagian kecil daripada keupayaan Rebase interaktif. Terokai potensi penuh dan teknik Git Lanjutan lain dengan "Kit Git Advanced" percuma kami (koleksi video pendek).
Selamat menyuarakan! Sertai kami masa depan untuk lebih banyak "git lanjutan"!
Atas ialah kandungan terperinci Rebase Interaktif: Bersihkan sejarah komit anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!