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 :

git reset et git revert


Sujet :

GIT

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut git reset et git revert
    Bonjour a tous;
    Quelqu'un pourrai m'expliquer la différence entre git reset et git revert.

    voilà le resultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    AK29580@logti--14w MINGW64 ~/workspace/test/totalisateur (master)
    $ git revert cf6d2d0bc3c26868e7f8360f6937f0bd959905de
    error: could not revert cf6d2d0... add war project for *******************
    hint: after resolving the conflicts, mark the corrected paths
    hint: with 'git add <paths>' or 'git rm <paths>'
    hint: and commit the result with 'git commit'
    
    AK29580@logti--14w MINGW64 ~/workspace/test/totalisateur (master|REVERTING)
    $
    Je comprend pas pour quoi! (mon projet été up to date)

    Merci!

  2. #2
    Membre éprouvé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2005
    Messages
    588
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2005
    Messages : 588
    Points : 1 230
    Points
    1 230
    Par défaut
    En faisant

    git revert cf6d2d...
    tu appliques un commit qui est l'inverse de cf6d2d...

    Ici tu as des conflits celà signifie que git ne peux pas finir l'opération... car ton workspace devait contenir des modifications ! et git ne peux revenir en arrière automatiquement...
    => git t'invite a résoudremanuellement ces conflits est faire de add/commit !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    git diff --name-only --diff-filter=U
    te permettra de savoir quels sont les fichiers qui pose problème...

    Note : tu peux résoudre graphiquement les conflits... si tu as configuré un outil de merge dans ta config de git !

    Enfin pour te répondre REVERT ou RESET
    - tu fais une REVERT lorsque tu as poussé ton commit sur le serveur
    - tu fais un RESET pour supprimer un commit qui es sur ton dépôt local uniquement (i.e. non encore poussé)

    a+
    Philippe

    a+
    Philippe

  3. #3
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Comme dit précédemment "revert" créé simplement un contre commit. Et c'est le meilleur moyen de "corriger" un commit qui a été partagé.

    Reset permet de "réinitialiser" l'état d'une branche, de l'index et/ou de l'espace de travail (ton système de fichier). Par exemple, tu peux faire pointer ta branche sur un commit complètement différent ou sur une autre branche mais garder ton espace de travail en l'état. Ou alors tu peux simplement annuler toutes les modifications en cours sur ton espace de travail et repartir comme si tu venais de faire un checkout de la branche.
    (A l'exception des nouveaux fichiers qui seront simplement "unstaged").


    Je t'invite à lire Pro Git. Tu y apprendras énormément de choses.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

Discussions similaires

  1. Git et eclipse?
    Par speed034 dans le forum Autres
    Réponses: 2
    Dernier message: 19/08/2009, 09h32
  2. Git avec Visual Studio ?
    Par kfx_2000 dans le forum Visual Studio
    Réponses: 0
    Dernier message: 19/06/2009, 00h42
  3. installer plugin_autocomplete depuis GIT
    Par Javix dans le forum Ruby on Rails
    Réponses: 3
    Dernier message: 16/02/2009, 10h15

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