262 votes

Comment supprimer le premier commit dans git ?

Je suis curieux de savoir comment supprimer le premier commit dans git.

Quelle est la révision avant d'engager quoi que ce soit ? Cette révision a-t-elle un nom ou une étiquette ?

44voto

CharlesB Points 27070

Il n'y a rien avant le premier commit, car chaque commit est référé à un commit parent. Cela rend le premier commit spécial (un commit orphelin), il n'y a donc aucun moyen de se référer à un "état" précédent.

Donc, si vous voulez corriger la validation, vous pouvez simplement git commit --amend : cela modifiera la validation sans en créer une autre.

Si vous voulez tout recommencer, supprimez le dépôt .git, et créez-en un autre avec git init

14voto

Megha Sahu Points 233
# Check out to a temporary branch:
git checkout --orphan TEMP_BRANCH

# Add all the files:
git add -A

# Commit the changes:
git commit -am "Initial commit"

# Delete the old branch:
git branch -D master

# Rename the temporary branch to master:
git branch -m master

# Finally, force update to our repository:
git push -f origin master

12voto

kp123 Points 85

Je cherchais un moyen d'annuler tous les commits de git d'un repo, comme s'ils ne s'étaient jamais produits.

Le rebasage fonctionnera jusqu'à un certain point. Cependant, le tout premier (chronologiquement le plus ancien git commit) va toujours être problématique, puisqu' il n'a pas de parent, donc ça va se tromper.

Aucune de ces réponses n'a tout à fait résolu ça pour moi. Mais après beaucoup de recherches et d'essais et d'erreurs, j'ai trouvé que ça fonctionnait !

git update-ref -d HEAD
git push origin master -f

J'espère que ça t'aidera. Passez une bonne journée.

6voto

Max Beikirch Points 1522

Vous voudrez peut-être simplement modifier votre premier commit (car il y a toujours un premier commit dans un git repo). Envisagez d'utiliser git commit --amend --reset-author au lieu du git commit --amend habituel.

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