Frage

Ich habe eine Website unter SVN und ich möchte mit der Live-Website flicken, was derzeit im Repository (dh effektiv SVN-Update auf die Live-Website aufrufen), aber ich will nicht .svn Verzeichnisse in jedem Ordner auf die Produktion Website.

Gibt es eine Möglichkeit SVN einzurichten, so dass die .svn Ordner mit Versionsinformationen nicht im selben Verzeichnis wie die Dateien unter Versionskontrolle ist?

In git können Sie erstellen und einen Arbeits Baum detatch und Push-Updates für ein Projekt auf diese Weise (nach http://toroid.org/ams/git-website-howto ), möchte ich grundsätzlich in der Lage sein, etwas ähnliches in sVN zu tun.

War es hilfreich?

Lösung

svn export funktioniert ähnlich wie ein checkout aber ohne die .svn Verzeichnisse. Sie können jedoch nicht update eine solche Struktur, da es kein SVN-Arbeitskopie ist.

Sie können auch den Web-Server so konfigurieren, den Zugriff auf die .svn Verzeichnisse zu verbieten und nur mit der Kasse + Update-Methode gehen.

Andere Tipps

Wie wäre es rsync konfiguriert nicht kopieren ".svn" Verzeichnisse?

rsync --exclude=.svn local_svn_copy webserver:site/

Dies kann erneut ausgeführt werden, um die Web-Server-Kopie zu aktualisieren.

httpd.conf:

<Directory ~ "\.svn">
    Order allow,deny
    Deny from all
</Directory>

Wie laalto erwähnte svn export macht für eine einfache, aber nicht sehr effiziente Methode zur Aktualisierung eine „Arbeitskopie“, wenn sie wiederholt verwendet:

milen@dev:~$ svn export --non-interactive --force "<URL>" <directory>

Sie können auch git-svn verwenden, um einen git Spiegel der Website zu erstellen und dann die Art und Weise in dem Artikel, der Sie verknüpfen beschrieben veröffentlichen. Offensichtlich ist dies nicht eine straight forward Lösung though.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top