J'ai un dépôt de 2 ans qui a commencé comme étant essentiellement un dépôt privé, de sorte qu'il trouve dans son histoire à différents points: fichiers clés, les clés de chiffrement , de grands ensembles d'images dans divers lieux, etc etc, dans l'histoire du référentiel, tous ne sont plus suivis, mais existent toujours dans l'histoire.En utilisant git, comment puis-je créer un clone la plupart du temps, moins l'histoire d'un dépôt
La source est en train de devenir partagé, puisque nous apportons de nouveaux développeurs, et je veux faire un démarrage propre avec un dépôt pour la plupart propre. Cependant, au cours de cette période de transition, je dois traiter avec l'ancien référentiel ainsi, le partage de patches/engage entre les deux référentiels. Quelle est la meilleure façon de rompre avec l'histoire précédente dans git tout en conservant
rétrocompatibilité
la possibilité de partager les commits entre l'ancien dépôt et le nouveau dépôt propre, aussi proprement que possible?
Objectifs:
- Faire commits sensibles dans le passé de façon de l'histoire non disponible dans le nouveau référentiel.
- Allow fonctionnalités dans le nouveau référentiel (clone, pousser, Fetch, tout ce qui est normal pour git)
- Maximisez la capacité de l'ancien repo à reconnaître les correctifs/engage qui viennent du nouveau repo
- [Moins important ] Rendre le nouveau repo plus rapide car il n'y a pas de binaires dans les anciens commits qui ne sont pas présents dans la copie de travail.
Clarification de la "rétrocompatibilité" à quelque chose de plus proche de la "compatibilité de partage de commit". En ce qui concerne l'utilisation de --depth 1, cela ne crée-t-il pas un dépôt invalidé, un peu? Cette page dit "Un dépôt peu profond a un certain nombre de limitations (vous ne pouvez pas le cloner ou le récupérer, ni le pousser depuis ou vers l'intérieur)". Ceux-ci semblent être des désavantages invalidants que je veux absolument éviter, puisque seulement à court terme des commits seront faits à l'ancien dépôt, et dans un mois ou deux tous les commits et branchements, etc etc seront faits au dépôt * new * . – Kzqai