IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GIT Discussion :

Fixer les conflits de pull request


Sujet :

GIT

  1. #1
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut Fixer les conflits de pull request
    Bonjour à tous,

    J'ai fais une pull request sur un projet php https://github.com/taniarascia/laconia/pull/9/files par contre je galère pour fixer les conflits.
    J'utilise vscode, si j'ai bien compris les conflits viennent de différences avec le repo d'origine? Dans mon cas comment je peux clean pour que la PR soit accepté s'il vous plaît?

    Merci de votre aide

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Avant de faire le pull request, vous auriez du merge le dépôt dans votre branche, afin que votre branche soit au fait des modifications qui ont été fait en parallèle sur le dépôt. Vous auriez eu les conflits (ou peut être pas), et vous les auriez réglé sur votre fichier local, puis vous auriez commité le tout dans une pull request propre.
    La récente (et classieuse) FAQ GIT est là pour vous aider.

    Note : pour supprimer un fichier :
    git rm ./fichier
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Merci pour votre réponse,

    Avant de faire le pull request, vous auriez du merge le dépôt dans votre branche
    J'ai fais un fork puis j'ai crée une branch pour faire la pull request, mais après le fork et le projet doivent rester indépendant le temps du développement de la fonctionnalité non? Quand vous dites merge, vous voulez dire j'aurais du merge le master de mon fork et après comparer avec la branch ou j'ai développé? (j'y avais pas pensé )
    Si j'utilise git rm ça supprime le fichier sur la branch mais si la pull request est merge cela n'affectera pas le fichier Database.php?
    Pour les problème de no new line at the end of linene comme dans le .gitignore je peux résoudre le problème?

    Merci.

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Les deux branches (master et votre branche de la nouvelle fonctionnalité) sont indépendantes. Elles évoluent donc en parallèle (et ces évolutions peuvent entraîner des conflits). Le fait de merge le master dans votre branche, permet à votre branche d'être à jour par rapport au tronc. Cela veut dire, que votre fonctionnalité, pourra être intégrée sans problème, car elle est en accord avec l'état du tronc (de master) au moment du pull request.

    Pour le no new line il faut juste ajouter une ligne vide à la fin des fichiers en questions (c'est-à-dire, se mettre à la fin du fichier, appuyer sur entrée et enregistrer). Certains éditeurs le font automatiquement à la sauvegarde.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Merci,

    Je commence à mieux comprendre. Quand on veut travailler sur un projet on doit:
    Forker le projet
    Le mettre à jour avec le dépot parent si ça fait un moment qu'on y a pas touché.
    Créer la branche et faire les différents commit.
    Merger master du fork dans la branche qui fera une pull request.

    Du coup j'ai pas fait ça du tout. Ma fonctionnalité fonctionne c'est dommage
    https://github.com/taniarascia/laconia/pull/9 Du coup vous me conseillez de supprimer la pull request et dans faire une autre? de supprimer les fichiers qui sont en conflits (git rm ./fichier après la pull request gardera bien le fichier du master après la pull request)?

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Le mettre à jour avec le dépot parent si ça fait un moment qu'on y a pas touché.
    Créer la branche et faire les différents commit.
    En effet, avant de faire une branche, il faut avoir une copie de master (dans le fork) à jour. Sinon, c'est des ennuis assurés.



    Du coup j'ai pas fait ça du tout. Ma fonctionnalité fonctionne c'est dommage
    Rien n'est perdu. Faites une sauvegarde de votre dossier de travail, pour assurer vos arrières.

    Pour corriger tout ça, vous devez :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    git checkout master
    git pull origin master
    git checkout feature-dockercompote-integration
    git rebase master
    Ensuite, vous corrigez vos conflits. Pour les corriger, il faut ouvrir les fichiers en conflits avec un éditeur et nettoyer le code (les sections en conflits sont encadrés de <<<<< / >>>>> ).
    Pour valider vos corrections de conflits, vous faites un git add fichier_en_conflit. Puis, vous commitez vos corrections.

    Vous testez que tout est bon.
    Et vous faites votre push.
    Vraiment, la FAQ GIT est aussi là pour vous aider .

    Et surtout, je ne pense pas que vous ayez besoin de faire un git rmPar contre, si vous voulez vraiment faire un revert (récupérer la version distante du fichier), vous pouvez faire un git checkout -- fichier
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    Merci pour votre aide désolé j'ai encore besoin d'un peu d'aide pour pas faire de bétise,

    Normalement cela doit mettre mon fork à jour? Dans le faq
    Si vous n’avez pas mis à jour votre dépôt local depuis quelques temps ou que le projet est très actif, il faut commencer par récupérer les dernières mises à jour.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    root@debian:/home/kevin/laconia# git checkout master
    Déjà sur 'master'
    root@debian:/home/kevin/laconia# git pull origin master
    Depuis https://github.com/kevin-schmitt/laconia
     * branch            master     -> FETCH_HEAD
    Déjà à jour.
    Pourtant je suis derrière les commits c'est normal?
    Nom : git.png
Affichages : 1428
Taille : 12,7 Ko

    Après je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    root@debian:/home/kevin/laconia# git checkout feature-dockercompose-integration
    Basculement sur la branche 'feature-dockercompose-integration'
    Votre branche est à jour avec 'origin/feature-dockercompose-integration'.
    root@debian:/home/kevin/laconia# git rebase master
    La branche courante feature-dockercompose-integration est à jour.
    root@debian:/home/kevin/laconia# git diff
    root@debian:/home/kevin/laconia# git diff --name-only --diff-filter=U
    root@debian:/home/kevin/laconia#
    Mais je n'ai rien. Merci pour votre aide.

    Edit:
    J'ai fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    git remote add upstream
    git fetch upstream
    La j'ai pu voir des conflit comme dans le fichier Database.php, j'ai résolue par la même occasion un problème de make file.
    Par contre https://github.com/taniarascia/laconia/pull/9 j'ai toujours les conflits je pense qu'il y a quelque chose que je fais mal

  8. #8
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Une fois les conflits résolus (sur la branche), vous devez commit les modifications, puis refaire le push (qui mettra à jour le pull request).
    Malheureusement, je m'y perds.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  9. #9
    Membre chevronné

    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2013
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : développeur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 576
    Points : 1 989
    Points
    1 989
    Par défaut
    J'ai réussi enfin merci beaucoup.

    Je résume pour ceux que ça pourrait aider:

    -Fork du projet
    - On m'est à jour son fork
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    git remote add upstream gitDuReposForker
    - on va sur la branche master et on récupère les modifications puis on push
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    git checkout master
    git pull upstream master && git push origin maste
    - On va sur la branche de la feature et on check et fixe les différences <<<<<<<<<<<<<head
    - on push les changements et on peut faire une pull request

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 17/03/2006, 15h01
  2. comment fixer les dimensions d'un JButton
    Par Zoroastre dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 08/01/2006, 16h23
  3. Comment fixer les largeurs des colonnes d'un TStrinGrid
    Par marsupilami34 dans le forum Composants VCL
    Réponses: 6
    Dernier message: 24/08/2005, 13h24
  4. afficher par pages les results d'1 request
    Par aKro dans le forum Requêtes
    Réponses: 5
    Dernier message: 06/07/2005, 20h27
  5. Fixer les marges à l'impression.
    Par roots_man dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 17/11/2004, 10h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo