2009-09-11 9 views
34

Nous nous connectons au dépôt par adresse IP - un hack rapide introduit par le gars avant moi, puisque nous n'avons pas de réel serveur, juste un vieux pc fonctionnant apache, svn etc. Nous avons récemment déménagé des bureaux et il semble le "serveur" utilise DHCP - il a démarré sur une nouvelle adresse IP ce matin. Il est facile de se connecter à trac (qui s'exécute également sur ce serveur): modifiez simplement le signet dans le navigateur. Mais qu'est-ce que je fais à propos de ma copie de travail? Comment puis-je dire où trouver le serveur?Notre serveur subversion a une nouvelle adresse IP - maintenant quoi?

+3

Ce n'est pas ce que vous avez demandé, mais une boîte Linux supplémentaire avec dnsmasq pour DHCP soulage beaucoup de problèmes avec DHCP et les serveurs. Contrairement à la plupart des configurations DHCP, ce serveur intègre le DNS, ce qui vous permet de vous référer aux serveurs par nom, même quand ils sont ré-IP. La configuration est beaucoup plus facile que ISC DHCPD ou BIND, car elle réutilise des choses comme/etc/hosts pour IP pour les mappages de noms d'hôtes. J'ai éteint le DHCP de mon routeur DSL à la maison, laissant Dnsmasq fournir la mise en cache DHCP et DNS. Bon produit. –

+1

Si vos administrateurs ne peuvent pas configurer le réseau pour ne pas avoir à utiliser des adresses IP nues, alors '/ etc/hosts' est votre ami. – sbi

Répondre

46

Faire une svn switch et utilisez l'option --relocate:

http://svnbook.red-bean.com/en/1.5/svn.ref.svn.c.switch.html

(ou dans TortoiseSVN, clic droit -> TortoiseSVN -> ... Relocaliser)

Le relocate ne nécessite pas référentiel l'accès et signifie exactement le cas où le contenu est exactement le même mais la base du référentiel est modifiée.

+0

Je reçois une erreur sur la commande switch: 'http: //xxx.yyy.zzz.1/RepositoryName' n'est pas le même référentiel que 'http: //xxx.yyy.zzz.2/RepositoryName'. Avez-vous une idée pourquoi? –

+2

Je vous suggère de donner également un nom au serveur dans/etc/hosts et de l'utiliser à la place - au moins si l'adresse IP change à nouveau, vous n'aurez pas à tout reconfigurer. – flussence

+0

waht commande réelle avez-vous utilisé? –

27

points de vues d'accès réponse au chapitre, mais juste pour être plus précis, le fait la commande

svn switch --relocate [URL] ancien [nouvelle URL]

qui mappe la réponse TortoiseSVN TortoiseSVN -> Relocate

+0

C'est utile. – neevek

7

La réponse de Dav (en utilisant svn switch avec --relocate) est la bonne réponse, mais avant cela, j'ai une autre suggestion: Utiliser un nom DNS. Comme il semble que vous n'avez pas de serveur DNS, ajoutez une entrée à votre fichier hosts pointant vers l'adresse IP. Ensuite, si l'adresse IP change à nouveau, tout ce que vous devez faire est de demander à chaque personne de mettre à jour le fichier hosts sur sa machine.

+0

Merci. Je regarderai cela quand j'aurai le temps (c'est-à-dire la prochaine fois que cela arrivera ...) –

4

Envisagez de configurer DNS pour le serveur Subversion - vous pouvez utiliser un serveur DNS interne, un service d'hébergement DNS gratuit, peu importe. Cela ne signifie pas que le serveur doit être accessible publiquement sur Internet, vous pouvez demander aux recherches DNS de renvoyer une adresse IP LAN. Cela rendra beaucoup moins douloureux la prochaine fois que le serveur changera d'adresse IP.

Une fois cette partie effectuée, déplacez l'emplacement du référentiel comme décrit dans les autres réponses.

0

Si vous souhaitez modifier SVN URL du référentiel adresse suivez les étapes ci-dessous

  1. Aller à l'emplacement du dossier .svn (peut-être est dossier caché) de votre référentiel ou point de départ de l'emplacement du dépôt
  2. droit Cliquez sur Dossier du référentiel -> TortoiseSVN -> Déplacer.
  3. Modifiez l'URL ancienne à nouvelle.
  4. Cliquez sur OK.
Questions connexes