J'ai git repo avec deux branches indépendantes, master et configs. J'ai créé des configurations, purgé tous les fichiers, puis placé uniquement dans les fichiers de configuration. Maintenant, je veux pousser cela sur un dépôt distant, mais pour ainsi dire une nouvelle branche vide (sans journaux de tous mes changements et anciennes révisions de la branche d'origine).
Comment puis-je purger toute l'histoire et la pousser?
Réponses:
La purge de tous les fichiers ne supprime pas l'historique. Vous devez d'abord créer une branche sans historique et ajouter vos fichiers de configuration. Ces jours-ci,
git checkout
une--orphan
option permet de créer une succursale sans historique. Voici les informations sur l'--orphan
option:Voici un lien vers la documentation pour le paiement . Vous pouvez également courir
git help checkout
.Une fois que vous avez créé votre branche sans historique, lorsque vous la poussez sur le serveur, elle n'aura pas non plus cet historique. FWIW, cela m'aide à penser
git push
comme "faire en sorte que la branche distante ressemble à ma branche locale". Donc, si vous avez de l'histoire, et que vous poussez, cela aura de l'histoire. Si vous ne le faites pas, la branche poussée ne le sera pas.la source
Comment puis-je purger toute l'histoire et la pousser?
Ensuite, vous pouvez exécuter votre
cf. ce one-liner
la source
J'avais besoin de faire cela pour envoyer du code à un pigiste sans partager d'informations privées ni supprimer mon historique.
Dans le cas où l'un d'entre vous utilise SourceTree, c'est ainsi que j'ai réussi à le faire. Veuillez me faire savoir si j'ai fait quelque chose de mal ou si j'oublie quelque chose car je ne suis pas familier avec la gestion du contrôle de source.
Quand j'ai vérifié bitbucket, il semble que cela semble avoir fonctionné et a supprimé mon historique de commit.
J'espère que cela aide quelqu'un.
la source