Bekerja dengan Penggabungan dan Hapus Cawangan
Mari buat cawangan induk terlebih dahulu, masukkan beberapa komit, buat cawangan baru yang disebut ciri, tambahkan beberapa komit, kemudian kembali untuk menguasai dan membuat komitmen lagi. Berikut adalah arahannya:
$ mkdir mygame$ cd mygame
$ git init
$ echo "Keputusan Reka Bentuk 1: Brainstarm" >> reka bentuk.txt
$ git tambah -A
$ git commit -m "C0: Memulakan Projek"
$ echo "Reka Bentuk Keputusan 2: Tulis Kod" >> reka bentuk.txt
$ git tambah -A
$ git commit -m "C1: Kod yang Dihantar"
ciri cawangan $ git
ciri $ git checkout
$ echo "Tambah Ciri 1" >> ciri.txt
$ git tambah -A
$ git commit -m "C2: Ciri 1"
$ echo "Tambah Ciri 2" >> ciri.txt
$ git tambah -A
$ git commit -m "C3: Ciri 2"
$ git master checkout
$ echo "Modifying Master Again" >> reka bentuk.txt
$ git tambah -A
$ git commit -m "C4: Master Modified"
Perintah di atas menimbulkan situasi berikut:
Anda boleh menyemak sejarah kedua-dua cawangan tersebut untuk melihat apa yang mereka lakukan:
status $ gitPada tuan cawangan
tiada apa yang perlu dilakukan, direktori kerja bersih
$ git log - talian
2031b83 C4: Master Diubahsuai
1c0b64c C1: Kod yang dihantar
ciri $ git checkout
Beralih ke 'ciri' cawangan
$ git log - talian
93d220b C3: Ciri 2
ad6ddb9 C2: Ciri 1
1c0b64c C1: Kod yang dihantar
ec0fb48 C0: Memulakan Projek
Sekarang mari kita anggap, anda ingin membawa semua perubahan dari cawangan ciri ke cawangan induk kami. Anda harus memulakan proses dari destinasi penggabungan. Kerana kami ingin bergabung ke cabang induk, anda perlu memulakan proses dari sana. Oleh itu, mari lihat cawangan induk:
$ git master checkoutBeralih ke cawangan 'tuan'
status $ git
Pada tuan cawangan
tiada apa yang perlu dilakukan, direktori kerja bersih
Sekarang mari buat penggabungan:
ciri gabungan $ gitSekiranya tidak ada konflik dalam penggabungan, anda akan membuka editor teks dengan komen:
Gabungkan 'ciri' cawangan# Sila masukkan mesej komit untuk menjelaskan mengapa penggabungan ini diperlukan,
# terutamanya jika menggabungkan hulu yang dikemas kini menjadi cabang topik.
#
# Garis yang dimulai dengan '#' akan diabaikan, dan mesej kosong dibatalkan
# komit.
Anda boleh mengubah suai komen atau menerima komen lalai. Hasil penggabungan harus menunjukkan hasil seperti ini:
Gabungan dibuat dengan strategi 'recursive'.ciri.txt | 2 ++
1 fail diubah, 2 sisipan (+)
buat mod 100644 ciri.txt
Selepas penggabungan, anda mempunyai syarat berikut:
Sekiranya anda memeriksa log, anda akan dapati:
status $ gitPada tuan cawangan
tiada apa yang perlu dilakukan, direktori kerja bersih
$ git log - talian
46539a3 C5: Gabungkan 'ciri' cawangan
2031b83 C4: Master Diubahsuai
93d220b C3: Ciri 2
ad6ddb9 C2: Ciri 1
1c0b64c C1: Kod yang dihantar
ec0fb48 C0: Memulakan Projek
Anda berjaya menggabungkan perubahan. Walau bagaimanapun, cabang ciri masih ada.
cawangan $ git -aciri-ciri
* tuan
Anda boleh menghapusnya dengan arahan berikut:
$ cit cawangan -d ciriSekiranya anda memeriksa sekarang, anda hanya perlu melihat cabang induk:
cawangan $ git -a* tuan
Kesimpulannya
Pastikan anda kerap memeriksa cawangan yang tidak digunakan dan hapuskannya. Anda mahu menjaga penyimpanan anda bersih agar mudah dinavigasi dan difahami.
Bacaan lanjut:
- https: // git-scm.com / book / en / v2 / Git-Branching-Basic-Branching-and-Merging