Au cours d'avoir ce repo (à l'origine SVN) je n'ai pas été bon à garder les liens de fichiers ensemble. J'ai changé les IDE deux fois, divisé le projet en modules Netbeans et mavisé le projet au fil du temps. La plus grande partie de l'historique des fichiers est perdue, principalement parce que lors de la mavenizing, j'ai effacé la totalité du tronc, commis, copié sur le projet maven, et commis. Pas exactement la meilleure idée, car j'ai découvert plus tard toute l'histoire réinitialisée à ce point. Il est devenu tellement mauvais qu'un programme de statistiques de dépôt est inutile, car il dit que j'ai 50 000 lignes de code investi au lieu de ~ 8 000.Réparer les liens entre les fichiers déplacés dans Mercurial
Est-il possible de corriger tous les historiques de fichiers endommagés? J'ai accès à SVN et Git si Mercurial ne peut pas le faire
Comme je suis la seule personne sur ce repo et que personne ne l'a cloné, je devrais bien me débrouiller avec ça. Cependant, existe-t-il un moyen de fusionner les commits de suppression et de copie que j'ai fait pendant que SVN? Parce que vous avez toujours le problème de l'histoire brisée avant le mavenizing. La seule façon dont je peux penser à revenir à cette révision spécifique, faire le travail, puis appliquer tous les changements sur le dessus. Mais c'est quelque chose que je ne connais pas très bien sur Mercurial et je pense que ça ferait perdre tous les timestamps, quelque chose que je veux préserver. – TheLQ
Si vous allez sur la route export-everything import-everything, vous pouvez fusionner deux changesets en utilisant 'hg import --no-commit' et en faisant les deux imports avant de faire' hg commit'. Les horodatages peuvent être réglés sur tout ce que vous voulez sur un changeset (voir 'commit --date') et les fichiers d'amorçage ne sont pas suivis du tout. –
Pour en revenir à cette question, j'essayais de le faire, mais je rencontre des problèmes pour recréer le repo. J'exporte avec 'hg export --git -a -o" ../patch-%r.patch "-vv 0: tip' et importe avec (grandement simplifié)' for i in \ 'ls .. | grep patch \ '; do hg import --similarity 90 --user "..." --force --date "..." ../$i; fait. Cependant, j'ai beaucoup d'erreurs d'importation: Les fichiers n'existent pas, ils existent déjà, ou sont rejetés. Aucune suggestion? – TheLQ