2 votes

Git : un autre exemple de perte d'objet ?

J'utilise git via l'interface d'eclipse (depuis un an, mais je ne suis pas très confiant).

J'ai un référentiel local que je pousse de temps en temps vers un référentiel distant. Un autre développeur fait la même chose. Aujourd'hui, j'ai poussé les changements des deux dernières semaines vers le référentiel distant. Le push a été rejeté. Comme je sais que l'autre développeur travaille sur une autre partie de l'application, j'ai récupéré la branche distante, puis j'ai procédé à une fusion (en cliquant sur ma branche et en la fusionnant avec la branche distante). Il y avait seulement un petit conflit que j'ai résolu, puis j'ai poussé à nouveau.

À ce stade, je découvre que j'ai perdu toutes les modifications dans mon référentiel local. Dans l'historique, je ne peux voir que les derniers commits effectués par les autres développeurs en plus de mon dernier push vers le dépôt distant (il y a 2 semaines).

Toute mon histoire locale des deux dernières semaines a disparu. Tous les changements ont disparu. Aucun journal récent. J'ai essayé avec fsck, je vois peu de fichiers dans lost-found. L'autre développeur n'a rien fait comme rebase ou similaire, juste push.

Une idée de ce que j'ai fait de mal, et plus important encore, comment le récupérer ????. Un conseil/guide serait vraiment utile, je suis vraiment sous pression... Merci

9voto

Aasmund Eldhuset Points 17036

Essayez

git reflog

et voyez si elle liste l'un de vos commits. Si c'est le cas, vous pouvez vérifier le hash du commit (disons, a4b82 )et créer une nouvelle branche à cet endroit :

git checkout -b new_branch_name a4b82

(Et quoi que vous fassiez, faites no exécuter "git gc" jusqu'à ce que vous ayez trouvé les commits et créé une branche pour eux...)

Prograide.com

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.

Powered by:

X