Maison > Opération et maintenance > Nginx > Comment résoudre les conflits de fusion Git

Comment résoudre les conflits de fusion Git

WBOY
Libérer: 2023-06-09 15:58:56
avant
2015 Les gens l'ont consulté

如何解决 Git 合并冲突

Supposons que vous et moi coéditions le même nom index.html. J'ai apporté des modifications au fichier, je l'ai validé et j'ai transféré les modifications vers le référentiel distant Git. Vous avez également apporté des modifications au même fichier, effectué une validation et commencé à appliquer les modifications au même référentiel Git. Cependant, Git a détecté un conflit car les modifications que vous avez apportées sont en conflit avec les modifications que j'ai apportées. index.html 的文件。我对文件进行了修改,进行了提交,并将更改推送到 Git 远程仓库。你也对同一个文件进行了修改,进行了提交,并开始将更改推送到同一个 Git 仓库。然而,Git 检测到一个冲突,因为你所做的更改与我所做的更改冲突。

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

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

$ git pull
Copier après la connexion

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

$ git status
Copier après la connexion

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

$ vim index.html
Copier après la connexion

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

以下是一个示例:

<<<<<<< HEAD<div ><h1>Sample text 1</h1></div>=======<div ><h1>Sample text 2</h1></div>>>>>>>> feature-branch
Copier après la connexion

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

<div ><h1>Sample text 2</h1></div>
Copier après la connexion

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

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

$ git add index.html
Copier après la connexion

7、提交更改:

$ git commit -m "Updated h1 in index.html"
Copier après la connexion

此命令使用消息 Resolved merge conflict

Voici comment résoudre les conflits :

1. Récupérez et fusionnez les dernières modifications du référentiel distant :

$ git push
Copier après la connexion

2. Identifiez un ou plusieurs fichiers en conflit :

rrreee

3. Ouvrez le conflit avec un éditeur de texte. 🎜rrreee🎜 4. Résoudre les conflits. Les modifications conflictuelles seront marquées comme <<<<<<< HEAD et Exemple de texte 1 et vous changez le titre en Exemple de texte 2. Les deux modifications ont été ajoutées au fichier. Vous pouvez maintenant décider quel en-tête conserver ou modifier le fichier pour fusionner les modifications. Dans les deux cas, supprimez les marqueurs indiquant le début et la fin des modifications, en ne laissant que le code souhaité : 🎜rrreee🎜 5. Enregistrez toutes les modifications et fermez l'éditeur. 🎜🎜6. Ajoutez des fichiers à la zone de préparation : 🎜rrreee🎜7. Soumettez les modifications : 🎜rrreee🎜Cette commande utilise le message Conflit de fusion résolu Soumettre les modifications. 🎜🎜8. Poussez les modifications vers le référentiel distant : 🎜rrreee🎜Conclusion🎜🎜Les conflits de fusion sont une bonne raison de vous concentrer sur votre code. Plus vous apportez de modifications à un fichier, plus il est facile de créer des conflits. Vous devriez faire plus de commits et chaque commit devrait moins changer. Vous devez éviter d’apporter d’énormes changements monolithiques qui incluent plusieurs améliorations de fonctionnalités ou corrections de bugs. Votre chef de projet vous remerciera également, car les commits avec une intention claire sont plus faciles à suivre. Cela peut être effrayant lorsque vous rencontrez pour la première fois un conflit de fusion Git, mais maintenant que vous savez comment le résoudre, vous constaterez que le résoudre est facile. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:51cto.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal