J'ai créé une demande d'accès à l'information (pull request) :
Le bouton "Approuver" ne fait rien et le bouton "Compléter" est désactivé.
Comment résoudre ce conflit dans la demande d'extraction ?
Microsoft vient d'ajouter des fusions basées sur le navigateur. Cela peut vous sortir d'un mauvais pas pour les petits conflits.
Et propose des visualisations améliorées des différents scénarios à partir de Sprint 150 .
Vous avez deux options pour résoudre le conflit, réintégrer les changements de la branche cible (ce qui crée des commits de fusion supplémentaires), ou rebaser sur la branche cible (ce qui laisse votre historique propre et agréable).
Vous devez cloner le dépôt localement, effectuer une fusion de la branche cible vers votre branche et pousser ces changements vers le dépôt. VSTS détectera les changements et mettra à jour la pull request.
-------o3 PR
/
---------o1-o2 target
Fusionner target (o2)
a PR
:
-------o3-o4 PR
/ /
---------o1----------o2 target
Complétez ensuite le PR
-------o3-o4 PR
/ / \
---------o1----------o2--o5 target
Vous pouvez également cloner le repo localement, rebaser la branche PR sur la dernière version de la branche cible, résoudre tous les problèmes liés au rebasement et forcer le retour des modifications sur la branche PR. VSTS détectera les changements et mettra à jour la pull request.
-------o3 PR
/
---------o1-o2 target
Ainsi, rebasez o3
sur o2
:
-------o3 PR
/
---------o1-o2 target
Complétez ensuite le formulaire PR
(avec fusion en avance rapide dans le cas ci-dessous) :
---------o1-o2-o3 target
Pour répondre à la question de @metabuddy :
Et après ? Cela montre seulement comment résoudre les conflits localement, je ne peux pas pousser la branche cible ou source directement vers VSTS parce que j'ai des politiques de branches qui exigent que les pull requests soient faites à partir de branches de fonctionnalités.
Vous pouvez suivre les étapes ci-dessus. La branche source et la branche cible seront légèrement différentes.
Et après ? Cela montre seulement comment résoudre les conflits localement, je ne peux pas pousser la branche cible ou source directement vers VSTS parce que j'ai des politiques de branches qui exigent que les pull requests soient faites à partir de branches de fonctionnalités.
@metabuddy : L'auteur de cette réponse a supposé que vous fusionniez dev dans master. Si vous avez une pull request de la branche fonctionnalité dans dev, vous pouvez localement fusionner dev dans votre branche fonctionnalité, résoudre le conflit et pousser la branche fonctionnalité.
Vous pouvez utiliser la technique décrite ci-dessus par @jessiehouwing ou utiliser le nouveau plug-in. MicrosoftDevLabs a publié le lien vers le plugin pour résoudre les conflits. Le lien vers le plugin est donné ci-dessous https://marketplace.visualstudio.com/items?itemName=ms-devlabs.conflicts-tab
Cette réponse fait référence au commentaire de @metabuddy sur la réponse de @sky91
Que se passe-t-il si votre branche cible est 'master' et que sur la branche 'master' vous avez appliqué les politiques pour ne pas accepter les fusions directes ?
Note : Considérons que 'master' est la branche cible et 'x001' la branche source dans la demande d'extraction, qui a des conflits entre les branches 'master' et 'x001'.
Dans ce cas, la solution proposée par @sky91 ne fonctionnera pas. Pour cela, vous devez suivre les étapes suivantes.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.