2009-08-24 8 views
3

Nous avons un grand vendor branch (1200 fichiers impairs) qui a récemment subi quelques changements non-triviaux, que je voudrais intégrer de nouveau dans le coffre. Il met à jour assez fréquemment et nous devrons mettre à jour également fréquemment, ainsi le faire à la main impliquera beaucoup trop de temps perdu. C'est ce que svn_load_dirs.pl a été fait, seulement je n'ai pas d'interpréteur perl et passer par les couches de bureaucratie pour en obtenir une installée, en fonction de l'expérience passée, prendrait plus de temps et impliquerait plus de douleur que la fusion. à la main à chaque fois.Existe-t-il des alternatives à svn_load_dirs.pl?

Nous avons un interpréteur python, et svn_load ferait bien le travail. Seulement plutôt que d'utiliser SVN CLI, il utilise directement pysvn, qui n'est pas installé. Voir ci-dessus: ne pas passer, ne pas recueillir 200 £.

Je me rends compte que c'est peu probable, mais quelqu'un connaît d'autres alternatives?

Répondre

6

Vous pouvez importer la nouvelle version dans un répertoire différent, puis fusionner trois URL avec --ignore-ancestry.

expliqué plus en détail:

votre ancienne version de votre succursale de fournisseur réside dans

/vendor_0.1.1 

vous importez la nouvelle version:

/vendor_0.1.2 

vous pouvez les fusionner à votre copie de travail qui pointe vers votre version de travail:

svn merge --ignore-ancestry <URL>/vendor_0.1.1 <URL>/vendor_0.1.2 <PATH_TO_WC> 

En faisant cela, vous allez comparer les deux versions et appliquer la différence à votre copie de travail.

Soyez conscient:

Comme vous importez toujours la version complète de votre succursale de fournisseur, votre dépôt va croître plus vite

+0

Voulez-vous dire ... /vendor_0.1.1 /vender 0,1. 2 ... ou ... /vendor_0.1.2 /vendeur 0.1.1 ... ? Je suis sur le point de courir à sec les deux de toute façon. Je vous remercie! :) – MHarris

+0

Je l'ai corrigé: il est ... /Fournisseur 0.1.1 /vendor_0.1.2 –

+1

Cela suppose que le 'vendeur' utilise également subversion, ce qui n'est pas toujours le cas. – rotoglup