Dans ma société, nous utilisons SVN, mais voulons passer sans problème à GIT à l'avenir. C'est pourquoi j'ai commencé à apprendre git-svn, qui promet de servir d'interface pour svn repository.Comment utiliser git-svn correctement, svn-ers checkout svnrepo et git-ers clone gitrepo, en commettant négligemment
J'ai essayé de l'utiliser avec la configuration suivante:
- SVNREPO - le dépôt svn maître
- GITREPO - clone git-svn de SVNREPO
- REPO1, REPO2, ... - clones git de GITREPO représentant git-ers
Les exigences sont les suivantes:
[ManyGitUsers]
beaucoup giters peuvent cloner/pousser à GITREPO[ManySvnUsers]
beaucoup svners engagent à SVNREPO[SyncHook]
synchronisation entre GITREPO et SVNREPO peut être fait en crochet, ou manuellement par admin avant que le crochet est développé[NoInteraction]
giters ne veulent pas savoir quelque chose sur SVNREPO et vice versa[NoProactivity]
les utilisateurs résolvent tous les problèmes (conflits) quand ils se produisent; ils ne sont pas synchronisés avec les autres pour les éviter
Questions:
- Est-ce possible avec la configuration git-svn? Suggérer d'autres s'il y en a un meilleur
- Comment dois-je configurer le GITREPO?
- Les utilisateurs doivent-ils connaître le backend spécial ou tout est-il transparent?
Jusqu'à présent, mes expériences ont montré qu'il plusmoins œuvres, mais engagent dans SVNREPO transgresse la possibilité de synchroniser avec git. Je crois juste que la raison est que je suis en train d'émettre de mauvaises commandes ...
vous dites que tous les utilisateurs doivent git-svn clone directement ... mais, est-ce que ça marche vraiment? Je crois comprendre que "git svn rebase" réappliquera tous les commit git locaux en plus de svn commit - avec l'effet de changer les numéros de révision de tous les commits locaux - ce qui casse toujours le dépôt et m'empêche d'effectuer d'autres commit ou push . Est-ce correct ? –
Je viens de trouver cette question: http://stackoverflow.com/questions/570945/git-clone-of-git-svn-tree (merci à la colonne correspondante!) Fournissant une explication qui confirme les mauvaises nouvelles: git-svn est bon pour la migration ponctuelle, pas pour une utilisation continue pendant une période de transition plus longue :( –