Heim > Betrieb und Instandhaltung > Nginx > So lösen Sie Git-Merge-Konflikte

So lösen Sie Git-Merge-Konflikte

WBOY
Freigeben: 2023-06-09 15:58:56
nach vorne
2011 Leute haben es durchsucht

如何解决 Git 合并冲突

Angenommen, Sie und ich bearbeiten gemeinsam denselben Namen index.html Datei. Ich habe Änderungen an der Datei vorgenommen, sie festgeschrieben und die Änderungen in das Git-Remote-Repository übertragen. Sie haben auch Änderungen an derselben Datei vorgenommen, einen Commit durchgeführt und begonnen, Änderungen an dasselbe Git-Repository zu übertragen. Git hat jedoch einen Konflikt festgestellt, da die von Ihnen vorgenommenen Änderungen mit den von mir vorgenommenen Änderungen in Konflikt stehen. index.html 的文件。我对文件进行了修改,进行了提交,并将更改推送到 Git 远程仓库。你也对同一个文件进行了修改,进行了提交,并开始将更改推送到同一个 Git 仓库。然而,Git 检测到一个冲突,因为你所做的更改与我所做的更改冲突。

以下是你可以解决冲突的方法:

1、从远程仓库获取并合并最新更改:

$ git pull
Nach dem Login kopieren

2、识别一个或多个有冲突的文件:

$ git status
Nach dem Login kopieren

3、使用文本编辑器打开冲突文件:

$ vim index.html
Nach dem Login kopieren

4、解决冲突。冲突的修改会被标记为 <<<<<<< HEAD。你需要选择要保留和放弃哪些修改,并手动编辑文件以合并冲突的修改。

以下是一个示例:

<<<<<<< HEAD<div ><h1>Sample text 1</h1></div>=======<div ><h1>Sample text 2</h1></div>>>>>>>> feature-branch
Nach dem Login kopieren

在这个例子中,我将网站标题更改为 Sample text 1,而你将标题更改为 Sample text 2。两种更改都已添加到文件中。现在你可以决定保留哪一个标题,或者编辑文件以合并更改。在任一情况下,删除指示更改开始和结束的标记,只留下你想要的代码:

<div ><h1>Sample text 2</h1></div>
Nach dem Login kopieren

5、保存所有更改,并关闭编辑器。

6、将文件添加到暂存区:

$ git add index.html
Nach dem Login kopieren

7、提交更改:

$ git commit -m "Updated h1 in index.html"
Nach dem Login kopieren

此命令使用消息 Resolved merge conflict

So können Sie Konflikte lösen:

1. Holen Sie sich die neuesten Änderungen aus dem Remote-Repository:

$ git push
Nach dem Login kopieren

2. Identifizieren Sie eine oder mehrere widersprüchliche Dateien:

rrreee

3. 🎜rrreee🎜 4. Konflikte lösen. Widersprüchliche Änderungen werden als <<<<<<< HEAD und Sie müssen auswählen, welche Änderungen beibehalten und verworfen werden sollen, und die Datei manuell bearbeiten, um widersprüchliche Änderungen zusammenzuführen. 🎜🎜Hier ist ein Beispiel: 🎜rrreee🎜In diesem Beispiel habe ich den Website-Titel in Beispieltext 1 und Sie ändern den Titel in Beispieltext 2 Beide Änderungen wurden der Datei hinzugefügt. Jetzt können Sie entscheiden, welchen Header Sie behalten möchten, oder die Datei bearbeiten, um die Änderungen zu übernehmen. Entfernen Sie in jedem Fall die Markierungen, die den Beginn und das Ende der Änderungen anzeigen, und lassen Sie nur den gewünschten Code übrig: 🎜rrreee🎜 5. Speichern Sie alle Änderungen und schließen Sie den Editor. 🎜🎜6. Dateien zum Staging-Bereich hinzufügen: 🎜rrreee🎜7. Änderungen einreichen: 🎜rrreee🎜Dieser Befehl verwendet die Nachricht Zusammenführungskonflikt behoben Änderungen einreichen. 🎜🎜8. Push-Änderungen an das Remote-Repository: 🎜rrreee🎜Fazit🎜🎜Merge-Konflikte sind ein guter Grund, sich auf Ihren Code zu konzentrieren. Je mehr Änderungen Sie an einer Datei vornehmen, desto leichter können Konflikte entstehen. Sie sollten mehr Commits durchführen und jeder Commit sollte sich weniger ändern. Sie sollten es vermeiden, monolithische große Änderungen vorzunehmen, die mehrere Funktionserweiterungen oder Fehlerbehebungen umfassen. Auch Ihr Projektmanager wird es Ihnen danken, denn Commits mit klarer Absicht sind einfacher zu verfolgen. Es mag beängstigend sein, wenn Sie zum ersten Mal auf einen Git-Merge-Konflikt stoßen, aber jetzt, da Sie wissen, wie Sie ihn lösen können, werden Sie feststellen, dass die Lösung einfach ist. 🎜

Das obige ist der detaillierte Inhalt vonSo lösen Sie Git-Merge-Konflikte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:51cto.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage