Guter Linux (Ubuntu) SVN Client [geschlossen]

160

Subversion hat einen hervorragenden Client unter Windows (Tortoise natürlich). Alles, was ich unter Linux ausprobiert habe, ist im Vergleich zum Kotzen ...

BuZZ-dEE
quelle
1
Dupe von stackoverflow.com/questions/52105/…
bradtgmurray

Antworten:

104

Haftungsausschluss: Vor langer Zeit war ich einer der Entwickler von RabbitVCS (früher bekannt als NautilusSvn).

Wenn Sie Nautilus verwenden, könnte Sie RabbitVCS (bereits von Trevor Bramble erwähnt) interessieren . Es ist ein unverfälschter Klon von TortoiseSVN für Nautilus, geschrieben in Python. Obwohl noch viel zu verbessern ist (insbesondere im Bereich der Leistung), scheinen einige Leute damit ziemlich zufrieden zu sein.

Der Name passt sehr gut zum Projekt, da die Geschichte, auf die er sich bezieht, das Entwicklungstempo (dh lange Nickerchen) ziemlich genau wiedergibt. Wenn Sie RabbitVCS als Versionskontrollclient verwenden, müssen Sie sich wahrscheinlich die Hände schmutzig machen.

Bruce van der Kooij
quelle
4
Ich habe es versucht und ich bin verliebt ... danke für die Entwicklung: D
Gabriel Solomon
1
RabbitVCS sieht sehr gut aus! Fast schade, dass ich svn nicht mehr zugunsten von Mercurial: D
Kimble,
1
Ein sehr netter Kunde. Ich habe es gestern installiert und ich könnte nicht glücklicher sein.
Nils Pipenbrinck
Wow - läuft unter Ubuntu 10.4 super - danke für den Tipp.
HDave
4
Verlangsamt meine Maschine bis zur Unbrauchbarkeit.
Matthew Read
33

Im Allgemeinen verwende ich nur die Befehlszeile für svn. Um ehrlich zu sein, ist dies der schnellste und einfachste Weg. Ich würde empfehlen, dass Sie es versuchen.
Bevor Sie dies ablehnen, sollten Sie sich wahrscheinlich fragen, ob es wirklich eine Funktion gibt, für die Sie eine GUI benötigen, und ob Sie lieber eine GUI-App öffnen und die Dateien herunterladen möchten, oder einfach "svn co svn: // site" eingeben -goes-here.org/trunk "

Sie können Dateien mit einfachen Befehlen, die mit "svn help" angegeben werden, einfach hinzufügen, entfernen, verschieben, festschreiben, kopieren oder aktualisieren. Für die meisten Benutzer ist dies also mehr als ausreichend.

HappySmileMan
quelle
9
Ein Befehlszeilentool ist nicht so toll, wenn Sie in GNOME arbeiten möchten, ohne die Shell zu berühren.
tovare
29
Warum Sie arbeiten möchten, ohne die Shell zu berühren (oder warum Sie denken, dass Sie auf diese Weise möglicherweise halb so produktiv sind), ist ein Rätsel.
Carl Meyer
17
GUI ist schön, wenn Sie Dateien selektiv festschreiben müssen, denn alles andere Terminal ist gut genug. Alle Probleme, die ich mit CLI hatte, waren darauf zurückzuführen, dass ich nicht verstand, was wirklich passiert
Slartibartfast,
72
-1 lautet die Frage nicht "Soll ich die CLI für SVN verwenden?", Sondern "Kann jemand einen TortoiseSVN-ähnlichen Client für Linux empfehlen?".
CDMckay
7
Ich finde, dass beim Zusammenführen ein Grafik-Client mit schnellen visuellen Unterschieden beim Klicken auf Dateien sehr hilfreich ist!
Peter Ajtai
22

Zunächst werde ich versuchen, hier nicht flamisch zu klingen;)

Seufz .. Warum bekommen die Leute nicht, dass der integrierte Client des Datei-Explorers der richtige Weg ist? Es ist so viel effizienter als das Öffnen von Terminals und das Tippen. Einfache Mathematik, ~ zwei Mausklicks gegenüber ~ 10 + Tastenanschlägen. Ich muss jedoch darauf hinweisen, dass ich die Befehlszeile liebe, da ich viel administrative Arbeit erledige und es vorziehe, die Dinge so schnell und einfach wie möglich zu automatisieren.

Nachdem ich von TortoiseSVN unter Windows verwöhnt worden war, war ich erstaunt über das Fehlen eines Tortoisesvn-ähnlichen integrierten Clients, als ich zu Ubuntu wechselte. Für reine Programmierer mag ein in IDE integrierter Client ausreichen, aber für den allgemeinen Gebrauch und beispielsweise für Grafiker oder andere zufällige Büroangestellte muss der Client in den Standard-Datei-Explorer integriert werden, da die meisten Benutzer ihn sonst überhaupt nicht verwenden .

Einige Gedanken sind bei einigen Kunden:

kdesvn, Der Client, den ich bisher am besten mag, obwohl es im Vergleich zu TortoiseSVN einen großen Ärger gibt - Sie müssen in den speziellen Subversion-Layoutmodus wechseln, um Überlagerungen zu erhalten, die den Dateistatus anzeigen. Daher würde ich kdesvn nicht integriert nennen.

NautilusSVN sieht vielversprechend aus, hat jedoch ab Version 0.12 Leistungsprobleme mit großen Repositorys. Ich arbeite mit Repositorys, in denen Arbeitskopien manchmal ~ 50.000 Dateien enthalten können, die von TortoiseSVN verarbeitet werden, NautilusSVN jedoch nicht. Ich hoffe also, dass NautilusSVN bald eine neue optimierte Version erhält.

RapidSVN ist nicht integriert, aber ich habe es ausprobiert. Es verhielt sich ziemlich seltsam und stürzte ein paar Mal ab. Es wurde nach ~ 20 Minuten deinstalliert.

Ich hoffe wirklich, dass das NautilusSVN-Projekt bald eine neue leistungsoptimierte Version veröffentlicht.

NaughtySVN scheint sich recht gut zu entwickeln, aber es fehlen derzeit Icon-Overlays und es gibt seit zwei Jahren keine Veröffentlichung mehr. Ich würde also sagen, NautilusSVN ist unsere einzige Hoffnung.


quelle
13
Was für einen effizient ist, ist für einen anderen nicht effizient.
Rasjani
2
In einigen Anwendungsfällen ist die Befehlszeile schneller. Insbesondere, wenn Sie bereits in einem Verzeichnisbaum im Terminal navigieren. Für einige Anwendungsfälle ist die Integration von svn in Ihren Browser sehr hilfreich. Insbesondere möchte ich in der Lage sein, einen Ordner zu öffnen und sofort grafisch zu sehen, welche Dateien geändert wurden, welche eingecheckt sind und welche nicht zum Repo hinzugefügt wurden. In diesem Fall können Sie die Ausgabe eines CLI-Tools nicht so schnell interpretieren wie das Anzeigen von Emblemen in einem Browser. Es ist jedoch sehr, sehr, sehr anmaßend anzunehmen, dass ein für Sie am besten geeignetes Werkzeug auch für andere am besten ist.
Dusktreader
1
VIM-Benutzer hier. Was ist ein Datei-Explorer?
Thomas-Peter
Simple math, ~two mouse clicks versus ~10+ key strokes Maus muss darauf zeigen (fragen Sie UI-Experten, das ist nicht zu vernachlässigen) und was Sie mit den 10 Tastenanschlägen tun können, hat möglicherweise eine viel höhere Operationsdichte als die Mausklicks (z. B. Autovervollständigung, Platzhalter, Suche im Befehlsverlauf ...). Es gibt immer noch einige Male, in denen ein einzelner Klick Zeit spart (z. B. Kopieren und Einfügen von der letzten Befehlsausgabe anstelle von UP und Platzieren von $ (...)), aber es handelt sich um weitere Ausnahmen. In jedem Fall ist es einfach falsch, mit dieser "einfachen Mathematik" zu vereinfachen.
Narcolessico
16

kdesvn ist wahrscheinlich das Beste, was Sie finden werden.

Zuletzt habe ich überprüft, ob es sich mit konqueror verbindet, aber es ist schon eine Weile her, ich bin zu git übergegangen :)

Kent Fredric
quelle
15

Sie können sich auch git-svn ansehen , das im Wesentlichen ein Git-Frontend für Subversion ist.

Glen Solsberry
quelle
1
git-svn ist der einzige svn-Client, den ich jemals produktiv nutzen konnte.
Dustin
3
+1. Es scheint bizarr, aber Git ist besser in Subversion als Subversion selbst - Operationen laufen schneller, es hat ein vernünftiges Grep-Tool, es verbraucht weniger Speicherplatz auf der Clientseite (!) Und es gibt Ihnen einen Puffer, um Commit-Fehler abzufangen.
4
Ich würde es nicht als "Subversion-Client" zählen.
Adam Byrtek
@AdamByrtek Wenn es aus einem SVN-Repo auschecken und Änderungen an einem Upstream-SVN-Repo festschreiben kann, ist es ein SVN-Client. Ich denke, Sie denken darüber nach, vorhandene Erfahrungen mit der Funktionsweise von svn anzuwenden.
Peter Cordes
git-svn ist SEHR langsam beim Auschecken eines großen Projekts, also werden Sie wahrscheinlich. Ich möchte nur die letzten hundert Umdrehungen oder so flach machen. --depthwird nicht unterstützt; Informationen dazu finden Sie unter stackoverflow.com/questions/747075/… . (mit svn log, um die aktuelle Drehzahl zu finden -r n:HEAD). Ich habe dies verwendet, um einen Checkout des Audacity-Quellbaums zu erhalten, in dem ich herumspielen konnte, und um einige der Patches aus der Debian-Verpackung auf anzuwenden. Und das alles mit den Git-Tools, die ich lokal verwende. :)
Peter Cordes
12

IMHO gibt es einen großartigen SVN GUI Client, SmartSVN. Es ist ein kommerzielles Projekt, aber es gibt eine Foundation-Version (100% funktionsfähig), die auch für kommerzielle Zwecke kostenlos verwendet werden kann. Es ist in Java geschrieben, es ist also plattformübergreifend (es erfordert das Sun-Java * -Paket) http://smartsvn.com


quelle
2
Wenn Sie TortoiseSVN jemals verwendet haben, werden Sie SmartSVN in ein paar Tagen hassen, auch wenn Sie keinen Cent dafür bezahlt haben: Es ist äußerst unpraktisch und unintuitiv bei der täglichen Arbeit (es sei denn, Sie haben eine Schulung bestanden).
AntonK
und funktioniert nicht mit openJDK standardmäßig
mlvljr
Ich habe heruntergeladen und arbeite damit. Bisher großartig!
B Faley
5

Ich denke, Sie könnten sich RabbitVCS ansehen

RabbitVCS ist eine Reihe von grafischen Tools, die einen einfachen und unkomplizierten Zugriff auf die von Ihnen verwendeten Versionskontrollsysteme ermöglichen. Derzeit ist es in den Nautilus-Dateimanager integriert und unterstützt nur Subversion. Unser Ziel ist es jedoch, andere Versionskontrollsysteme sowie andere Dateimanager zu integrieren. RabbitVCS ist von TortoiseSVN und anderen inspiriert.

Ich bin gerade dabei, es zu versuchen ... scheint vielversprechend ...

opensas
quelle
+1 Kaninchen rockt !, Es scheint, ich habe Schildkröte SVN über Ubunutu :)
Shahjapan
2

Niemand anderes hat es erwähnt und ich vergesse immer wieder den Namen, also füge ich diese Anweisungen hier für mein zukünftiges Ich hinzu, wenn ich es das nächste Mal google ...

Derzeit scheint Pagavcs die beste Option zu sein .

Sie möchten eine dieser .debDateien

alberner Spamfilter: //pagavcs.googlecode.com/svn/repo/pool/main/p/pagavcs/

(1.4.33 ist das, was ich gerade installiert habe. Versuchen Sie es also, wenn die neueste Version Probleme verursacht.)

installieren und dann ausführen

nautilus -q

Um Nautilus herunterzufahren, öffnen Sie Nautilus erneut und Sie sollten bereit sein, ohne sich abmelden / herunterfahren zu müssen

Leider verschluckt sich Kaninchen nur an großen Repos, was für mich unbrauchbar ist. Paga verlangsamt das Surfen nicht, scheint aber auch nicht zu versuchen, in Verzeichnisse zu greifen, um festzustellen, ob sich etwas geändert hat.

Kriss
quelle
1

Ich bin sehr zufrieden mit kdesvn - lässt sich sehr gut in konqueror integrieren, ähnlich wie trortousesvn mit Windows Explorer, und unterstützt die meisten Funktionen von tortoisesvn.

Natürlich profitieren Sie von dieser Integration, wenn Sie kubunto und nicht ubuntu verwenden.

Sunny Milenov
quelle
1

Schauen Sie sich die SVN Work Bench an, sie ist anständig, aber nicht perfekt

sudo apt-get install svn-workbench
Drejc
quelle
1

Ich benutze manchmal kdesvn für die Arbeit direkt mit einem Repository.

Ich benutze Subclipse oft, wenn ich über Eclipse an Projekten arbeite.

Vor allem aber benutze ich die gute alte CLI. Mit einigen Aliasen und Bash-Skripten zum Sichern ist es wirklich die prägnanteste und zuverlässigste Methode zur Verwendung von svn.

Ich habe NautilusSVN (keine Beziehung zu NaughtySVN ) und svn-workbench ausprobiert und fand sie zu problematisch oder ohne Funktionalität. Ich weiß, dass ich RapidSVN irgendwann ausprobiert habe, aber ich muss nicht beeindruckt gewesen sein, da es schnell deinstalliert wurde, aber ich kann mich an nichts erinnern.

Trevor Bramble
quelle
1

Wenn Sie es verwenden, verfügt NetBeans über ein hervorragendes Versionskontrollmanagement mit mehreren Clients neben SVN.

Ich würde jedoch empfehlen, dass Sie lernen, wie man SVN über die Befehlszeile verwendet. CLI ist der Geist von Linux :)

Samoz
quelle
1

Wenn TortoiseSVN wirklich tief verwurzelt ist, können Sie versuchen, es über WINE zu verwenden? Obwohl ich es nicht ausprobiert habe.

Gelingt dies nicht, habe ich festgestellt, dass Eclipse mit Subversive ziemlich gut ist.

Grundlefleck
quelle
2
Ich habe TortoiseSVN mit WINE ausprobiert, aber ohne Glück, da TortoiseSVN eine Shell-Erweiterung ist, die einen voll funktionsfähigen Windows Explorer benötigt, der nicht in WINE enthalten ist.
Andrea Francia
1

Wenn Sie Eclipse verwenden, ist Subclipse die beste, die ich je verwendet habe. Meiner Meinung nach sollte dies auch als eigenständiges System existieren ... Einfach zu verwenden, verknüpft mit dem Code und dem Projekt, das Sie in Eclipse haben ... Einfach perfekt für Entwickler, die Eclipse verwenden und eine GUI wünschen.

Persönlich bevorzuge ich den Befehlszeilen-Client, sowohl für Linux als auch für Windows.

Bearbeiten: Wenn Sie XFCE und seinen Dateimanager (Thunar) verwenden, gibt es ein Plugin, das recht gut funktioniert. Wenn ich das Terminal nicht öffnen möchte, benutze ich nur dieses, es hat alle Funktionen, ist schnell und einfach zu bedienen. Es gibt aber auch eine für Git ...

Atmocreations
quelle
1

Nautilus bietet ein Kontextmenü für SVN-Aktivitäten

sudo apt-get install nautilus-script-collection-svn

cp -r /usr/share/nautilus-scripts/Subversion ~/.gnome2/nautilus-scripts/

Für mehr Information

Nautilus-Kontextmenü

Santhosh Shettigar
quelle
1

Als Entwickler verwende ich den Eclipse + Sub-Eclipse-Client (Angenommen, Sie verwenden svn, um ein Entwicklungsprojekt auszuchecken, und Sie werden sie kompilieren).

Die meisten Leute verbringen nicht viel Zeit mit SVN-Operationen, und die Befehlszeile ist der schnellste Weg, dies zu tun.

Es gibt auch einige nette GUI-Tools:

http://rabbitvcs.org/

oder

http://www.harecoded.com/nautilus-subversion-integration-tool-execute-svn-commands-with-gnome-scripts-96355

Chedi
quelle
0

Da Sie Ubuntu und nicht Kubuntu verwenden, gehe ich davon aus, dass Sie GNOME verwenden. Möglicherweise interessieren Sie sich für die unter diesem Link beschriebene Nautilus Subversion-Integration .

jtimberman
quelle
0

Anjuta hat ein eingebautes SVN-Plugin, das in die IDE integriert ist.

LiraNuna
quelle