Supprimer tout l'historique des validations Git
Je suis en train de chercher une pension à partir de Github, revenir sur une étiquette dans le passé, de le pousser à un autre à distance avec la suppression de toute l'histoire. Je peux tout faire avec ci-dessous à l'exception de la suppression de tous les journaux. Ce que je suis absent?
git clone https://github.com/user/user-repo.git
cd user-repo
git reset --hard tags/v2.0
git remote add stash ssh://git@myserver:7999/myproject/user-repo.git
git push --force stash master
source d'informationauteur noway
Vous devez vous connecter pour publier un commentaire.
J'ai pensé ce que vous voulez, c'est un repo comme un autre, afin de supprimer la
.git/
répertoire et re-initing il sera plus simple.Vous pouvez utiliser
git merge --squash
de squash tous les commits dans l'un et puis l'enfoncer.Sont fondamentalement, vous parler à propos de rouler tous les commits dans un commit ou voulez-vous de conserver tous les commits, mais tronquer le réel message de commit?
Pour écraser la commet en un seul (et tronquer le dernier message de commit, si vous voulez), vous pouvez utiliser un rebase interactif:
À tronquer le réel des messages de commit, mais de conserver tous les commits, utilisez le
--msg-filter
option pourgit filter-branch
.