Jadual Kandungan
Cara menyelesaikan konflik cantuman dalam git
1. Penjanaan Konflik
1.1, kod cawangan batang
1.2. Tom mengubah suai kod dan menyerahkannya untuk digabungkan
1.3, bicu mengubah suai kod dan menyerahkannya untuk digabungkan
2. Selesaikan konflik
Rumah alat pembangunan git Bagaimana untuk menyelesaikan konflik gabungan dalam git

Bagaimana untuk menyelesaikan konflik gabungan dalam git

Jun 24, 2022 am 11:30 AM
git

Kaedah Git untuk menyelesaikan konflik gabungan: 1. Edit fail bercanggah, padam simbol khas dalam fail dan ubah suai kod seperti yang diperlukan 2. Tambah fail yang ditentukan ke kawasan pementasan dan tambah cawangan yang ditentukan Serahkan ke trunk dan laksanakan komit Apabila menggunakan arahan "git commit", anda tidak boleh memasukkan nama fail Jika anda menambah nama fail, ralat akan dilaporkan.

Bagaimana untuk menyelesaikan konflik gabungan dalam git

Persekitaran pengendalian artikel ini: sistem Windows 10, Git versi 2.30.0, komputer Dell G3.

Cara menyelesaikan konflik cantuman dalam git

konflik git

Apabila berbilang kod cawangan digabungkan menjadi satu cawangan, fail yang sama diubah suai dalam kedua-dua branches , akan dijana tidak kira di mana pengubahsuaian dibuat;

Terdapat juga jenis yang akan dijana apabila nama fail yang sama diubah suai dalam dua cawangan.

Sebab

Apabila menggabungkan cawangan, kedua-dua cawangan mempunyai dua set pengubahsuaian yang berbeza sama sekali dalam fail yang sama. Git tidak boleh memutuskan yang mana satu untuk digunakan untuk

kami. Kandungan kod baharu mesti diputuskan secara manual.

Penyelesaian

Edit fail yang bercanggah, padamkan simbol khas dan tentukan kandungan yang hendak digunakan

Tambahkan pada kawasan pementasan

Laksanakan penyerahan (Nota: Anda tidak boleh menggunakan arahan git commit dengan nama fail pada masa ini. Menambah nama fail akan menyebabkan ralat. Selepas penyerahan berjaya, penggabungan akan hilang)

Contohnya adalah seperti berikut:

1. Penjanaan Konflik

1.1, kod cawangan batang

Terdapat dua fail dalam cawangan batang

main.cpp

#include <stdio.h>
#include <string.h>

int main()
{
	char data[100] = "my branch name is master";
	int length = strlen(data);
	
	for(int i = 0; i < length; i++)
	{
		printf("%c", data[i]);
	}
	
	printf("branch master\n");
	
	return 0;
}
Salin selepas log masuk

README.md

this is master branch
Salin selepas log masuk

Pada masa ini, Tom dan Jack menarik kod cawangan batang dan membuat pengubahsuaian.

1.2. Tom mengubah suai kod dan menyerahkannya untuk digabungkan

tom mencipta cawangan A dan membuat pengubahsuaian berikut pada fail

main.cpp

#include <stdio.h>
#include <string.h>

int main()
{
	char data[100] = "my branch name is A";
	int length = strlen(data);
	
	for(int i = 0; i < length; i++)
	{
		printf("%c", data[i]);
	}
	
	printf("branch AAA\n");
	
	return 0;
}
Salin selepas log masuk

README. md

this is AAA branch
Salin selepas log masuk

Serahkan kod dan gabungkannya ke dalam batang

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (A)
$ git add .

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (A)
$ git commit -m "A分支代码提交"
[A ccb2626] A分支代码提交
 2 files changed, 3 insertions(+), 3 deletions(-)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (A)
$ git push origin A
Enumerating objects: 7, done.
Counting objects: 100% (7/7), done.
Delta compression using up to 12 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (4/4), 376 bytes | 376.00 KiB/s, done.
Total 4 (delta 1), reused 3 (delta 1), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
remote: Create a pull request for &#39;A&#39; on Gitee by visiting:
remote:     https://gitee.com/lingpe/kaol/pull/new/lingpe:A...lingpe:master
To https://gitee.com/lingpe/kaol.git
 * [new branch]      A -> A

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (A)
$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (master)
$ git merge A
Updating 40c0115..ccb2626
Fast-forward
 README.md | 2 +-
 main.cpp  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (master)
$ git push origin master
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
To https://gitee.com/lingpe/kaol.git
   40c0115..ccb2626  master -> master

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/tom/kaol (master)
$
Salin selepas log masuk

1.3, bicu mengubah suai kod dan menyerahkannya untuk digabungkan

bicu membuat pengubahsuaian berikut pada kod

main.cpp

#include <stdio.h>
#include <string.h>

int main()
{
	char data[100] = "my branch name is B";
	int length = strlen(data);
	
	for(int i = 0; i < length; i++)
	{
		printf("%c", data[i]);
	}
	
	printf("branch BBB\n");
	
	return 0;
}
Salin selepas log masuk

README.md

this is BBB branch
Salin selepas log masuk

Komitkan kod dan gabungkannya ke dalam batang

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git add .

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git commit -m "B分支代码提交"
[B bdcbe03] B分支代码提交
 2 files changed, 3 insertions(+), 3 deletions(-)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git push origin B
Enumerating objects: 53, done.
Counting objects: 100% (53/53), done.
Delta compression using up to 12 threads
Compressing objects: 100% (34/34), done.
Writing objects: 100% (50/50), 4.66 KiB | 2.33 MiB/s, done.
Total 50 (delta 16), reused 43 (delta 12), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
remote: Create a pull request for &#39;B&#39; on Gitee by visiting:
remote:     https://gitee.com/lingpe/kaol/pull/new/lingpe:B...lingpe:master
To https://gitee.com/lingpe/kaol.git
 * [new branch]      B -> B

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$ git merge B
Updating 40c0115..bdcbe03
Fast-forward
 README.md | 2 +-
 main.cpp  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$
Salin selepas log masuk

Konflik berlaku apabila menolak

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$ git push origin master
To https://gitee.com/lingpe/kaol.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://gitee.com/lingpe/kaol.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$
Salin selepas log masuk

2. Selesaikan konflik

Langkah seterusnya ialah cara menyelesaikan konflik

Tukar semula kepada B. cawangan, dan kemudian tarik kod cawangan utama

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git pull origin master
remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 4 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (4/4), 356 bytes | 178.00 KiB/s, done.
From https://gitee.com/lingpe/kaol
 * branch            master     -> FETCH_HEAD
   40c0115..ccb2626  master     -> origin/master
Auto-merging main.cpp
CONFLICT (content): Merge conflict in main.cpp
Auto-merging README.md
CONFLICT (content): Merge conflict in README.md
Automatic merge failed; fix conflicts and then commit the result.
Salin selepas log masuk

Jika tarikan gagal, anda boleh Kami akan melihat mesej gesaan memberitahu kami fail yang menyebabkan konflik.

Buka fail main.cpp secara langsung Anda boleh melihat aksara khas berikut, yang menggesa kami baris kod yang menyebabkan konflik.

#include <stdio.h>
#include <string.h>

int main()
{
<<<<<<< HEAD
        char data[100] = "my branch name is B";
=======
        char data[100] = "my branch name is A";
>>>>>>> ccb26269f42245dfcbedfbf2218419c5ab7f2787
        int length = strlen(data);

        for(int i = 0; i < length; i++)
        {
                printf("%c", data[i]);
        }

<<<<<<< HEAD
        printf("branch BBB\n");
=======
        printf("branch AAA\n");
>>>>>>> ccb26269f42245dfcbedfbf2218419c5ab7f2787

        return 0;
}
Salin selepas log masuk

Selesaikan konflik secara manual terus dalam fail. Alih keluar aksara khas daripada fail dan ubah suai kod seperti yang diperlukan.

#include <stdio.h>
#include <string.h>

int main()
{
        char data[100] = "my branch name is B and A";
        int length = strlen(data);

        for(int i = 0; i < length; i++)
        {
                printf("%c", data[i]);
        }

        printf("branch BBB\n");
        printf("branch AAA\n");
        return 0;
}
~
Salin selepas log masuk

Begitu juga, untuk README.md, selesaikan konflik secara manual.

this is BBB and AAA branch
Salin selepas log masuk

Selepas menyelesaikan konflik, serahkannya kepada cawangan B

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B|MERGING)
$ git add .

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B|MERGING)
$ git commit -m "解决冲突"
[B f30e1ea] 解决冲突

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git push origin B
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 405 bytes | 405.00 KiB/s, done.
Total 4 (delta 1), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
To https://gitee.com/lingpe/kaol.git
   bdcbe03..f30e1ea  B -> B

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$
Salin selepas log masuk

Akhirnya gabungkan cawangan B ke dalam batang, dan tidak akan ada konflik

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (B)
$ git checkout master
Switched to branch 'master'
Your branch and 'origin/master' have perged,
and have 1 and 1 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$ git merge B
Updating bdcbe03..f30e1ea
Fast-forward
 README.md | 2 +-
 main.cpp  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$ git push origin master
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
remote: Powered by GITEE.COM [GNK-6.2]
To https://gitee.com/lingpe/kaol.git
   ccb2626..f30e1ea  master -> master

lng@DESKTOP-9TD21KL MINGW64 ~/Desktop/jack/kaol (master)
$
Salin selepas log masuk

Itu sahaja , konflik berjaya diselesaikan

Anda boleh lihat kod cawangan utama

main.cpp

#include <stdio.h>
#include <string.h>

int main()
{
	char data[100] = "my branch name is B and A";
	int length = strlen(data);
	
	for(int i = 0; i < length; i++)
	{
		printf("%c", data[i]);
	}
	
	printf("branch BBB\n");
	printf("branch AAA\n");
	return 0;
}
Salin selepas log masuk

README.md

this is BBB and AAA branch
Salin selepas log masuk

OK

Pembelajaran yang disyorkan: "Tutorial Git"

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan konflik gabungan dalam git. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah Dana Amanah Penyulitan Kelabu? Apakah Dana Amanah Penyulitan Kelabu? Mar 05, 2025 pm 12:33 PM

Pelaburan Grayscale: Saluran untuk pelabur institusi untuk memasuki pasaran cryptocurrency. Syarikat itu telah melancarkan beberapa amanah crypto, yang telah menarik perhatian pasaran yang meluas, tetapi kesan dana ini pada harga token berbeza dengan ketara. Artikel ini akan memperkenalkan secara terperinci beberapa dana amanah utama Grayscale. Dana Grayscale Major Crypto Trust yang boleh didapati dengan sekilas Pelaburan Grayscale (yang diasaskan oleh DigitalCurrencyGroup pada tahun 2013) menguruskan pelbagai dana amanah aset crypto, menyediakan pelabur institusi dan individu yang bernilai tinggi dengan saluran pelaburan yang mematuhi. Dana utamanya termasuk: Zcash (Zec), Sol,

Sebagai pembuat pasaran teratas memasuki pasaran crypto, apakah impak yang akan dimiliki oleh Castle Securities terhadap industri ini? Sebagai pembuat pasaran teratas memasuki pasaran crypto, apakah impak yang akan dimiliki oleh Castle Securities terhadap industri ini? Mar 04, 2025 pm 08:03 PM

Kemasukan pembuat pasaran Castle Securities ke dalam pembuat pasaran Bitcoin adalah simbol kematangan pasaran Bitcoin dan langkah utama bagi pasukan kewangan tradisional untuk bersaing untuk kuasa harga aset masa depan. Pada 25 Februari, menurut Bloomberg, Citadel Securities berusaha untuk menjadi penyedia kecairan untuk kriptografi. Syarikat itu bertujuan untuk menyertai senarai pembuat pasaran di pelbagai bursa, termasuk pertukaran yang dikendalikan oleh Coinbaseglobal, Binanceholdings dan Crypto.com, orang yang biasa dengan perkara itu berkata. Setelah diluluskan oleh pertukaran, syarikat itu pada mulanya merancang untuk menubuhkan pasukan pembuat pasaran di luar Amerika Syarikat. Langkah ini bukan hanya tanda

Bitwise: perniagaan membeli bitcoin trend besar yang diabaikan Bitwise: perniagaan membeli bitcoin trend besar yang diabaikan Mar 05, 2025 pm 02:42 PM

Pemerhatian Mingguan: Perniagaan Menimbulkan Bitcoin - Perubahan Brewing Saya sering menunjukkan beberapa trend pasaran yang diabaikan dalam memo mingguan. Langkah MicroStrategy adalah contoh yang jelas. Ramai orang mungkin berkata, "MicroStrategy dan Michaelsaylor sudah terkenal, apa yang akan anda perhatikan?" Pandangan ini adalah satu sisi. Penyelidikan mendalam mengenai penggunaan Bitcoin sebagai aset rizab dalam beberapa bulan kebelakangan ini menunjukkan bahawa ini bukan kes terpencil, tetapi trend utama yang muncul. Saya meramalkan bahawa dalam 12-18 bulan akan datang, beratus-ratus syarikat akan mengikutinya dan membeli jumlah besar bitcoin

Melampaui SFT, rahsia di belakang O1/DeepSeek-R1 juga boleh digunakan dalam model besar multimodal Melampaui SFT, rahsia di belakang O1/DeepSeek-R1 juga boleh digunakan dalam model besar multimodal Mar 12, 2025 pm 01:03 PM

Penyelidik dari Universiti Shanghai Jiaoto, Shanghai Ailab dan Universiti Cina Hong Kong telah melancarkan projek sumber terbuka Visual-RFT (Visual Fine Fine Tuning), yang hanya memerlukan sedikit data untuk meningkatkan prestasi model bahasa besar visual (LVLM). Visual-RFT bijak menggabungkan pendekatan pembelajaran tetulang berasaskan peraturan DeepSeek-R1 dengan paradigma penalaan Fine-Penalaan Terbuka (RFT) OpenAI, berjaya memperluaskan pendekatan ini dari medan teks ke medan visual. Dengan merancang ganjaran peraturan yang sepadan untuk tugas-tugas seperti subkategori visual dan pengesanan objek, Visual-RFT mengatasi batasan kaedah DeepSeek-R1 yang terhad kepada teks, penalaran matematik dan bidang lain, menyediakan cara baru untuk latihan LVLM. Vis

Perpustakaan apa yang digunakan untuk operasi nombor terapung di GO? Perpustakaan apa yang digunakan untuk operasi nombor terapung di GO? Apr 02, 2025 pm 02:06 PM

Perpustakaan yang digunakan untuk operasi nombor terapung dalam bahasa Go memperkenalkan cara memastikan ketepatannya ...

Perpustakaan mana yang dibangunkan oleh syarikat besar atau disediakan oleh projek sumber terbuka yang terkenal? Perpustakaan mana yang dibangunkan oleh syarikat besar atau disediakan oleh projek sumber terbuka yang terkenal? Apr 02, 2025 pm 04:12 PM

Perpustakaan mana yang dibangunkan oleh syarikat besar atau projek sumber terbuka yang terkenal? Semasa pengaturcaraan di GO, pemaju sering menghadapi beberapa keperluan biasa, ...

Panduan Pelaburan Altcoin: Ajar Anda Cara Membayar Wang Di Dex Exchange, Sekarang adalah masa yang tepat untuk membina kedudukan dengan harga yang rendah Panduan Pelaburan Altcoin: Ajar Anda Cara Membayar Wang Di Dex Exchange, Sekarang adalah masa yang tepat untuk membina kedudukan dengan harga yang rendah Mar 05, 2025 am 09:45 AM

Pada musim sejuk tahun 2018, saya memeriksa stesen kuasa fotovoltaik di Gobi di Qinghai. Susunan panel Oltaic yang pada masa itu. Pasaran crypto sedang menjalani kitaran yang sama seperti industri tradisional. Sama seperti perlawanan knockout industri fotovoltaik dari 2012 hingga 2016, pasaran CEX Altcoin telah memasuki peringkat pembubaran kejam: jumlah perdagangan harian banyak projek bintang pada tahun 2021 jatuh di bawah 10 juta dolar AS, dan nilai pasaran median menyusut lebih daripada 70% dari puncaknya. Ini sama seperti trajektori photovoltaic, internet dan gergasi arang batu yang jatuh dari stok berharga tinggi ke saham berharga rendah. Tetapi di belakang kekejaman kitaran,

Bitwise: Strategi pengambilalihan bitcoin korporat akan meletup! Harga mata wang akan meningkat dengan ketara Bitwise: Strategi pengambilalihan bitcoin korporat akan meletup! Harga mata wang akan meningkat dengan ketara Mar 05, 2025 am 09:57 AM

Pengasas Bitwise Matt Hougan menegaskan bahawa trend perusahaan penimbunan Bitcoin dipandang rendah. Sebagai tambahan kepada MicroStrategy, 70 syarikat tersenarai sudah memegang Bitcoin, dan jumlah ini akan berkembang dengan ketara untuk meningkatkan harga Bitcoin tahun ini. Pengaruh MicroStrategy jauh melebihi jangkaan MicroStrategy bukanlah sebuah syarikat gergasi, dan nilai pasaran globalnya hanya kira -kira 220. Walau bagaimanapun, syarikat itu membeli kira -kira 257,000 bitcoin tahun lepas, melebihi jumlah bitcoin yang ditambang sepanjang 2024 (218,829). MicroStrategy baru -baru ini mengumumkan rancangan untuk membelanjakan lebih daripada $ 42 bilion untuk meningkatkan pegangan bitcoin, yang sama seperti harga semasa.

See all articles