Ich möchte wissen, ob auf meinem Server Subversion 1.5 ausgeführt wird.
Wie kann ich das herausfinden?
Wäre auch schön, meine SVN-Client-Versionsnummer zu kennen. svn help
war nicht hilfreich.
Hinweis: Ich möchte nicht die Revisionsnummer meines Projekts usw. Diese Frage bezieht sich auf die Subversion-Software selbst.
svn://
-only ist.Lassen Sie uns diese Antworten zusammenführen:
Für REPOSITORY / SERVER (die ursprüngliche Frage):
Wenn Sie auf den Subversion-Server zugreifen können:
Führen Sie nach einer früheren Antwort von Manuel Folgendes auf dem SVN-Server aus:
Wenn HTTP / HTTPS-Zugriff:
Beachten Sie die Zeile "powered by Subversion", wenn Sie über einen Browser auf den Server zugreifen.
Greifen Sie über einen Browser auf das Repository zu und suchen Sie nach der in die HTML-Quelle eingebetteten Versionszeichenfolge. Aus früheren Antworten von Elviejo und Jaredjacobs . Verwenden Sie ab ?? die Entwicklertools Ihres Browsers (normalerweise Ctrl+ Shift+ I), um die vollständige Antwort zu lesen. Dies ist auch die einfachste (nicht automatisierte) Möglichkeit, mit Zertifikaten und Autorisierungen umzugehen - Ihr Browser erledigt dies für Sie.
Überprüfen Sie die Antwort-Tags (diese werden in der HTML-Quelle nicht angezeigt) aus einer früheren Antwort von Christopher
Wenn svn: // oder ssh + svn Zugriff
Aus einer früheren Antwort von Milen
Aus einer früheren Antwort von Glenn
Wenn GoogleCode SVN-Server
Wenn ein anderer benutzerdefinierter SVN-Server
Bitte bearbeiten Sie, um diese Antwort zu beenden
Für den KUNDEN (nicht die ursprüngliche Frage):
quelle
svnserve --version
die auf dem Server verwendet werden muss. Wenn es auf dem Client ausgeführt wird, gibt es die Versionsnummer des Clients an, nicht den Server.Auf dem Server:
svnserve --version
im Falle einer svnserve-basierten Konfiguration (svn: // und svn + xxx: //).
(Zur Vollständigkeit).
quelle
svnserve
ist kein Client-Programm, sondern der Server. Und Sie müssen den obigen Befehl eingeben, wenn Sie sich auf dem Server befinden.Hier ist der einfachste Weg, um die SVN-Serverversion zu erhalten. HTTP funktioniert auch dann, wenn Ihr SVN-Repository HTTPS benötigt .
quelle
Für einen HTTP-basierten Server gibt es ein Python-Skript, um die Serverversion unter folgender Adresse zu finden: http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/server-version.py
Sie können die Client-Version mit erhalten
quelle
Wenn die Subversion-Serverversion nicht in der HTML-Liste gedruckt ist, ist sie im vom Server zurückgegebenen HTTP RESPONSE-Header verfügbar. Sie können es mit diesem Shell-Befehl erhalten
Wenn der SVN-Server die Angabe eines Benutzernamens und eines Kennworts erfordert, fügen Sie die
wget
Parameter--user
und--password
den Befehl wie folgt hinzuquelle
--no-check--certificate
Parameter hinzugefügt , a--user
und--password
, um Server zu behandeln, die Anmeldeinformationen erfordern, aber kein gültiges SSH-Zertifikat haben. Dies ist ziemlich häufig, wie Sie bemerkt haben.Eine weitere Option: Wenn Sie Firefox (ich verwende 14.0.1) und eine SVN-Weboberfläche haben:
Dort sollte eine Zeichenfolge "SVN / 1.7.4" oder ähnliches vorhanden sein. Auch dies wird wahrscheinlich nur funktionieren, wenn Sie wie oben erwähnt "ServerTokens Full" haben.
quelle
Es ist wirklich nicht einfach Möglichkeit, herauszufinden, welche Version von Subversion auf Ihrem Server ausgeführt wird - außer auf den Server zuzugreifen und sich selbst davon zu überzeugen.
Dies ist jedoch möglicherweise kein so großes Problem, wie Sie vielleicht denken. Bei Subversion-Clients wird ein Großteil der Grunzarbeit erledigt, und die meisten Versionen der Subversion-Clients können mit fast jeder Version des Servers arbeiten.
Die letzte Version, in der die Serverversion wirklich einen Unterschied für den Client ausmachte, war der Wechsel von Version 1.4 zu Version 1.5, als Merge Tracking hinzugefügt wurde. Das Merge-Tracking wurde in Version 1.6 erheblich verbessert, dies wirkt sich jedoch nicht wirklich auf die Interaktionen zwischen Client und Server aus.
Nehmen wir die neuesten Änderungen in Subversion 1.8:
svn move
ist jetzt eine erstklassige Operation : Subversion versteht endlich, dass dassvn move
keinsvn copy
und istsvn delete
. Dies ist jedoch etwas, das der Client behandelt und das die Serverversion nicht wirklich beeinflusst.svn merge --reintegrate
veraltet : Auch dies ist kein Problem, solange der Server Version 1.5 oder höher ist.svn:global-ignores
undsvn:auto-props
: Ach! Was wir wirklich wollten. Eine Möglichkeit, diese beiden Eigenschaften einzurichten, ohne von der Subversion-Konfigurationsdatei selbst abhängig zu sein. Dies ist jedoch nur ein Client-Problem, sodass es wiederum keine Rolle spielt, welche Version des Servers Sie verwenden.Von allen Funktionen hängt nur eine davon ab, ob die Version des Servers 1.5 oder höher ist (und 1.4 ist seit einiger Zeit veraltet. Die neueren Funktionen von 1.8 verbessern die Leistung Ihrer Arbeitskopie, der Server befindet sich jedoch in Version 1.8 Sie sind von Ihrer Client-Version viel stärker betroffen als von Ihrer Server-Version.
Ich weiß, dass dies nicht die Antwort ist, die Sie wollten (keine offizielle Möglichkeit, die Serverversion anzuzeigen), aber zum Glück wirkt sich die Serverversion nicht wirklich auf Sie aus.
quelle
Versuche dies:
Ich hoffe, es hilft.
quelle
Verwenden Sie für eine svn + ssh-Konfiguration ssh, um svnserve --version auf dem Hostcomputer auszuführen:
Es ist erforderlich, den Befehl svnserve auf dem Computer auszuführen, der tatsächlich als Server dient.
quelle
Verwenden Sie einfach einen Webbrowser, um zur SVN-Adresse zu gelangen. Überprüfen Sie den Quellcode ( Ctrl+ U). Dann finden Sie so etwas wie im HTML-Code:
quelle
Durchsuchen Sie das Repository mit Firefox und überprüfen Sie das Element mit Firebug . Auf der Registerkarte NET können Sie die Kopfzeile der Seite überprüfen. Es wird so etwas haben wie:
quelle
Für Subversion 1.7 und höher stellt der Server keine Fußzeile bereit, die die Serverversion angibt. Sie können jedoch den folgenden Befehl ausführen, um die Version aus den Antwortheadern abzurufen
Beachten Sie, dass dies auch auf Subversion-Servern funktioniert, auf denen Sie keine Zugriffsberechtigung haben.
quelle
Sie können über HTTP eine Verbindung zu Ihrem Subversion-Server herstellen und die Versionsnummer im HTTP-Header finden.
quelle
Wenn Sie VisualSVN Server verwenden, können Sie die Versionsnummer auf verschiedene Weise ermitteln.
Verwenden Sie VisualSVN Server Manager
Führen Sie die folgenden Schritte aus, um die Version über die Verwaltungskonsole zu ermitteln:
Wenn Sie auf Version klicken , werden auch die Versionen der Komponenten angezeigt.
Überprüfen Sie die Datei README.txt
Führen Sie die folgenden Schritte aus, um die Version aus der Datei readme.txt zu ermitteln:
quelle
Das Folgende in der Befehlszeile sollte Ihnen die Versionsnummer geben
quelle
svn help
war nicht hilfreich, da keine Parameter aufgelistet wurden, die mit zwei Strichen beginnen. Ich habe Ihren Beitrag über Google gefunden, als ich nach meiner SVN-Version gesucht habe.Ein Repository wird nicht automatisch aktualisiert, es sei denn, der Administrator führt 'svnadmin upgrade' aus. Überprüfen Sie die 'Format'-Datei, um die Versionsnummer des Repositorys zu ermitteln. Siehe den Kommentar von @ bdumitriu .
quelle