SVN in Eclipse ist in zwei Lager aufgeteilt. Die SVN-Leute haben ein Plugin namens Subclipse entwickelt . Die Eclipse-Leute haben ein Plugin namens Subversive . Im Großen und Ganzen machen beide das Gleiche. Was sind die Vor- und Nachteile von jedem?
svn
eclipse
subclipse
subversive
rjmunro
quelle
quelle
Antworten:
Beide sind sehr ähnlich, aber Subversive ist der "Eclipse-SVN-Anbieter". Ich benutze Subversive hauptsächlich wegen einiger praktischer Funktionen:
Gruppierung der Geschichte
Wenn ich den Verlauf eines Zweigs durchsuche, anstatt nur eine Reihe von Zeilen für jedes Commit zu sehen, können Commits nach heute, Woche usw. gruppiert werden.
Zuordnung von Stamm, Zweigen und Tags
Subversive setzt das Standard-SVN-Layout voraus: Trunk, Zweige, Tags (die Sie ändern können). Wenn Sie also Tags oder Zweige erstellen möchten, müssen Sie nur einen Klick ausführen und den Namen des Tags oder Zweigs angeben.
Wie ich schon sagte, das sind kleine Unterschiede, die ich einfach bequem finde. Beide funktionieren hervorragend mit mylyn, aber insgesamt gibt es bei diesen beiden Erweiterungen wirklich keine großen Unterschiede.
Das Zusammenführen mit Subversive ist allerdings ein Problem (ich habe Subclipse noch nicht ausprobiert). Ich konnte noch nie erfolgreich zusammenführen. Die Vorschau der Zusammenführung ist großartig, aber sie würde die Zusammenführung niemals abschließen, oder es wird viel zu lange dauern. Die meiste Zeit schließe ich das Zusammenführen über die Befehlszeile ohne Probleme ab.
quelle
1.0.0.I20120601-1700
) und das Zusammenführen von Code könnte nicht einfacher sein.Ich werde eine Pause einlegen, um darauf zu antworten. Ich bin Projektleiter für Subclipse und verwalte alle Releases usw. für das Projekt. Meine Vorurteile sind also offensichtlich.
Ich werde nicht zu viel über Subversive sprechen. Natürlich gibt es Benutzer, die es verwenden und mögen. Funktionell sind die Produkte sehr ähnlich, da beide ausgereifte Produkte sind.
Eine Sache, die ich kommentieren möchte, ist die Vorstellung, dass Subversive irgendwie das "offizielle Eclipse" -Plugin ist. Das ist einfach nicht wahr, da es keine solche Bezeichnung gibt. Eclipse ist eine Open-Source-Stiftung, und jedes Projekt, das seine Regeln, Prozess- und IP-Anforderungen usw. befolgen möchte, kann sein Projekt bei der Stiftung hosten. Das macht Sie nicht mehr oder weniger offiziell als jedes andere Plugin.
Ich werde auch bemerken, dass Subversive seit seiner Gründung in der "Inkubations" -Phase geblieben ist, und es scheint mir nicht, dass es jemals die Anforderungen für den Abschluss erfüllen wird. Wie Sie hier sehen können, gab es nur einen Committer im Projekt, und die Commit-Aktivität ist auf ein sehr niedriges Niveau zurückgegangen.
Subversiv - SVN-Teamanbieter
Warum sollten Sie Subclipse verwenden? Wir sind aktiv an Subversion selbst beteiligt. Ich bin ein Subversion PMC-Mitglied und helfe bei der Pflege der Java-Sprachbindungen, damit wir (und andere Projekte wie Subversive) die API verwenden können.
Wir arbeiten direkt mit Subversion zusammen, um die API zu definieren und zu verbessern und sicherzustellen, dass die erforderlichen Funktionen für Clients wie Subclipse verfügbar sind. Wir arbeiten auch eng mit den Teams von Visual Studio Integration ( AnkhSVN ) und TortoiseSVN zusammen, um sicherzustellen, dass die Benutzererfahrung für alle Kunden relativ konsistent ist.
Subclipse wird weiterhin aktiv gepflegt und wir unterstützen weiterhin die Eclipse-Versionen 3.2 bis 4.2. Wir sind immer bemüht, auf Feedback zu hören und Ideen aus der Community einzubeziehen. Die jüngsten Versionen von 1.8.x enthalten interne Änderungen, die die Leistung von Eclipse bei der Arbeit mit großen Projekten erheblich verbessern (wenn Sie dies wirklich sehen).
Subclipse war führend in Bereichen wie der Unterstützung von Merge-Tracking, in denen wir eng mit dem Subversion-Team zusammengearbeitet haben, um diese Funktion zuerst in Version 1.5 hinzuzufügen und in späteren Versionen weiterzuentwickeln. Wir waren oft die ersten Konsumenten neuer APIs und haben dem Projekt das Feedback gegeben, das zum Härten der Funktion erforderlich ist. Vor einigen Jahren haben wir auch eine grafische Überarbeitungsgrafik eingeführt, die als erste diese lange nachgefragte Funktion für Eclipse-Benutzer bereitstellt.
Wenn es in Subversive bestimmte UI-Funktionen gibt, die die Benutzer gerne in Subclipse sehen würden, würde ich Sie ermutigen, unsere Community zu besuchen und an unseren Diskussionsforen teilzunehmen. Vielleicht teilen andere Benutzer Ihre Ansichten und wir können die Benutzeroberfläche gemeinsam verbessern.
Forum [Subclipse-Benutzer] .
Eclipse 4.2 ist die neueste Version zum Zeitpunkt dieses Beitrags. Es ist jedoch davon auszugehen, dass Subclipse alle zukünftigen Eclipse-Versionen unterstützt, sobald sie erstellt werden.
quelle
Mit jeder neuen Version von Eclipse installiere ich Subversive, da dies der von Eclipse bereitgestellte Standard ist. Und jedes Mal gibt es Probleme, meine bereits bestehenden Projekte zu erkennen.
Am Ende deinstalliere ich Subversive und installiere stattdessen Subclipse, was wunderbar funktioniert. Ich verwende SVN auch häufig über die Befehlszeile sowie in Eclipse, und Subclipse hat damit keine Probleme.
quelle
Nachdem ich diesen Beitrag gelesen hatte, wechselte ich zweifellos zu Subclipse.
http://eclipsezone.com/eclipse/forums/t77149.rhtml#92035407
quelle
Wenn Sie viel mit Subversion zusammenführen, bevorzugen Sie wahrscheinlich CollabNet Desktop - Eclipse Edition. Sie müssen ein Konto bei CollabNet registrieren, um den Download zu erhalten, aber es ist kostenlos. Es handelt sich im Wesentlichen um Subclipse mit einer besseren Zusammenführungs-Benutzeroberfläche.
Ich bin nicht mit CollabNet verbunden.
CollabNet hat seinen verbesserten Merge-Client nicht registrierten Benutzern von Subclipse zur Verfügung gestellt. Sie erhalten es, indem Sie die CollabNet Merge Client-Funktion auswählen, wenn Sie Subclipse von der Update-Site installieren.
quelle
Ich würde Subclipse sagen, da ich Subversive nicht einmal zum Laufen bringen konnte;)
quelle
Ich denke tatsächlich, dass beide irgendwie saugen. Die Verwendung von TortoiseSVN ist meiner Meinung nach eine weitaus bessere Lösung. Es ist weitaus robuster und funktioniert in der Regel besser. Ich hatte immer Integrationsprobleme mit Subclipse und Subversive.
quelle
Beide haben ziemlich abscheuliche Warzen, aber ich konnte Subversive nicht dazu bringen, mit einem Projekt zu arbeiten, das ich über die Kommandozeile ausgecheckt hatte, und das war ein Show-Stopper für mich.
quelle
Ich habe beide ausprobiert und sowohl Subclipse als auch Subversive sind schrecklich. Beide sind schwierig zu installieren. Wenn Sie Subversive verwenden, können Sie keinen externen SVN-Client verwenden .
In Eclipse muss jedoch ein SVN-Client installiert sein, um Änderungen zu verfolgen und Ihr lokales Repository nicht zu beschädigen.
Ich habe Subclipse installiert, verwende aber TortoiseSVN , um das Festschreiben / Markieren / Verzweigen / Zusammenführen durchzuführen.
quelle
Subclipse, weil es zumindest funktioniert.
Subversiv war für mich bisher ein Eimer voller Misserfolge. Es würde nicht gut mit all meinen alten Projekten spielen, die ich mit Subclipse ausgecheckt hatte.
quelle
Sicher haben beide IDE-Plugins ihre Probleme. Beides schließt jedoch nicht die parallele Verwendung anderer Lösungen wie TortoiseSVN oder der Befehlszeile aus. Ich benutze alle drei für meine Projekte bei der Arbeit.
Die wichtige Sache zu erinnern ist , dass alle Client - SVN - Software sollte die gleiche SVN - Dateiformat verwenden - das unterscheidet sich zwischen den Versionen von SVN - oder Sie Schwierigkeiten fragen.
Ein weiteres Problem, das wir festgestellt haben, ist, wenn Ihre Client-Software ein anderes SVN-Dateiformat als der Server verwendet. (Mit Dateiformat meine ich die Art und Weise, wie alle Informationen in all den scheinbar unsichtbaren .svn-Dateien dargestellt werden, die effektiv aufzeichnen, was SVN über Ihre Projektdateien wissen muss.) Das kann Chaos anrichten. Es gibt einen dokumentierten Fehler zwischen 1.5 Server und 1.6 Clients, aber ich kann den Link momentan nicht finden.
Wir hatten Probleme beim Ausführen des überlegenen (IMO) Subclipse 1.6-Plugins aufgrund von Inkompatibilitäten mit unserem SVN 1.5.5-Server. Also kehrten wir zu Subversive zurück. Es funktioniert gut, wenn auch langsam und etwas fehlerhaft (aber besser). Wir werden jedoch zu Subclipse wechseln, wenn unser Server aktualisiert wird. Und ja, wir überprüfen unsere Projekte mit TortoiseSVN und importieren sie in Eclipse (es ist schneller).
Wir haben festgestellt, dass es, wie andere Poster hier sagten, NICHT funktionieren würde, wenn wir neuere Versionen von TortoiseSVN ausführen würden, die Dateien im 1.6.x-Format geschrieben haben, aber als wir zu TortoiseSVN 1.5.x zurückgekehrt sind, hat es einwandfrei funktioniert. Gleiches gilt für den Befehlszeilen-Client (den wir mit unseren Ant- Aufgaben nutzen).
quelle
Ich habe mich für Subclipse entschieden, da es am engsten mit dem Subversion-Projekt verbunden ist und daher die Kern-SVN-Funktionalität mit größerer Wahrscheinlichkeit besser handhabt. Wenn es überhaupt keine Funktion ausführt, habe ich TortoiseSVN als Backup.
quelle
Nur ein Update. Ich habe kürzlich Eclipse neu installiert und stand vor der Wahl zwischen Subclipse und Subversive. Ich hatte auch einige Probleme damit, Subversive zum Laufen zu bringen, also entschied ich mich für Subclipse.
Es ist perfekt auf meinem 64-Bit-Linux-Computer installiert und läuft einwandfrei. Ich habe die gängigsten Funktionen wie Aktualisieren, Festschreiben usw. Verknüpfungen zugeordnet, und es ist ein Knaller. Die Zusammenführung ist auch gut, obwohl ich mich für größere Zusammenführungen immer noch an TortoiseSVN wende. Ich habe es sowohl mit 3.5 als auch mit 3.6 versucht und beide funktionieren gut. Am Ende habe ich 3.5 verwendet, weil die Schlüsselbindung aus irgendeinem Grund nicht mit 3.6 funktioniert hat.
quelle
Wenn Sie svn + ssh als Protokoll für den Zugriff auf Ihr Repository verwenden, empfehle ich Ihnen dringend, Subclipse zu wählen: Subversive ist nicht intelligent genug, um sich Ihre Anmeldeinformationen ordnungsgemäß zu merken, und fordert Sie bei jeder Aktualisierung Ihrer Arbeitskopie und auch zur Eingabe des Benutzernamens und des privaten Schlüssels auf für jedes svn-external, das Sie möglicherweise eingerichtet haben.
Die Option "Anmeldeinformationen speichern" ist in diesem Zusammenhang nicht mehr gültig und seit der ersten öffentlichen Veröffentlichung von Subversive verfügbar.
quelle
Wenn Sie eines davon in Ihrem Unternehmen verwenden und es möglicherweise sogar in eigenen Eclipse-basierten Produkten bündeln möchten, ist Ihr Leben mit Subclipse viel einfacher, da es unter der geschäftsfreundlichen Eclipse Public License verfügbar ist.
Subversiv benötigt dagegen sogenannte Konnektoren, um voll funktionsfähig zu sein. Und diese haben separate und unterschiedliche Lizenzen. Möglicherweise erhalten Sie zwei oder drei verschiedene Lizenzen nur für die subversive Funktionalität, während sich alle anderen Eclipse-Plugins direkt unter dieser einen EPL befinden. Dies ist auch der Grund, warum diese Konnektoren nicht auf eclipse.org gehostet werden.
Aus diesem Grund werden sie nach der subversiven Installation dynamisch heruntergeladen (was auch bedeutet, dass Sie durch einfaches Spiegeln der Update-Site von eclipse.org keine brauchbare subversive Offline-Installation in Ihrem Unternehmensnetzwerk erhalten).
quelle
Bis ungefähr Mai 2008 habe ich Subclipse verwendet, aber aufgrund von Problemen mit einigen Projekten habe ich auf Subversive umgestellt und verwende dies ohne Probleme. Wenn Sie etwas Besonderes wie kopflose Buckminster- Builds machen, dann ist Subversive definitiv das Richtige für Sie.
quelle
Wenn Sie TortoiseSVN verwenden und die Version regelmäßig aktualisieren, kann Eclipse mit Subversive alle SVN-Informationen verlieren und einige beängstigende Fehler auslösen.
Der Grund dafür ist, dass die neue Version von TortoiseSVN neue Metadaten hinzufügt, die Eclipse Subversive nur versteht, wenn Sie auch Ihre Eclipse SVN-Konnektoren auf dem neuesten Stand halten.
Im Allgemeinen verwende ich den SVNKit-Connector, sodass TortoiseSVN 1.5.x mit dem Eclipse SVNKit-Connector 1.5.x und TortoiseSVN 1.6.x mit dem Eclipse SVNKit-Connector 1.6.x funktioniert.
quelle
Subversive hat mehr Vorteile als die unten aufgeführte Subclipse . Aber nur eine Funktion, die Subversion nicht hat, ist für die Verwendung von Zweigen so wichtig. Also müssen wir Subclipse verwenden .
Subversive Vorteile:
Subclipse- Vorteil
quelle
+1 Subclipse
-1 Subversiv
Subversiv wird auch nach geringfügigem Refactoring verwirrt und hat Validierungsprobleme wie oben.
Umgebung: STS 2.7.2 (basierend auf Galileo)
quelle
Für mich ist weder besser noch schlechter, aber Subversive ist das Standard-SVN-Plugin in der Eclipse Ganymede-Plattform. Daher besteht die Möglichkeit, dass es besser in Eclipse integriert ist.
quelle
Als Ergänzung zu Brendons Antwort:
Wir verwenden Subversion seit Version 1.5.1 und haben zuerst Subclipse verwendet. Da wir jedoch stark von der Zusammenführungsfunktion abhängen, haben wir zu Subversive gewechselt, was praktischer ist und im Zusammenführungsdialog eine separate Option zum erneuten Integrieren bietet.
Ein Fehler, der beim Zusammenführen möglicherweise behindert wird, besteht darin, dass bei expliziter Auswahl von Revisionen nicht die zuletzt aufgeführte Revision verwendet wird. ZB "101-100" führt r100 nicht zusammen und "100" führt also überhaupt nichts zusammen. (Version 0.7.5)
Und es hat die gleichen Indikatoren wie das CVS-Plugin verwendet.
quelle
Während ich beide mit Helios arbeiten ließ, bevorzuge ich Subclipse wegen seiner hervorragenden Unterstützung für
bugtraq
Eigenschaften ( Details hier ).Die Geschichte Ansicht zeigt eine separate Spalte ( mit dem Titel
bugtraq:label
, AnzeigenBUGID
s), und das Kontextmenü verfügt über eine eigene Aktion „Open Bug URL“ (Verknüpfung zubugtraq:url
) - ich konnte nicht herausfinden , wie man mit Subversive jede dieser Informationen zuzugreifen.quelle
Ich benutze Subversive seit meinem Upgrade auf Ganymede. Ich benutze es mit Eclipse unter Linux (Ubuntu und Fedora Core), Windows XP und Mac OS X.5. Abgesehen von einigen Problemen, mit denen Subversion 1.5.1 die richtigen Sicherheitsbibliotheken unter Mac OS verwendet, hatte ich keine Probleme. Angesichts der Tatsache, dass es als Eclipse-Technologieprojekt angenommen wurde, neige ich dazu, meine Wetten in Bezug auf langfristige Hoffnungen darauf zu setzen.
quelle
Ich habe es nicht wirklich benutzt, aber es scheint, dass Subversive " Check Out As " unterstützt, genau wie die integrierte CVS-Unterstützung.
Wenn Sie ein Projekt aus SVN übernehmen und es als Webprojekt ausführen möchten, können Sie dies möglicherweise auf einmal tun. Um das gleiche Ergebnis in Subclipse zu erzielen, überprüfe ich einfach die Quellen und führe Folgendes aus:
quelle
Ich habe beide verwendet, und während Subclipse für mich unzuverlässig war, hat Subversive (zumindest mit einer früheren Version) ein Konto meines Kollegen gesperrt, als er versehentlich die falschen Anmeldeinformationen eingegeben hat (die Netzwerkanmeldung wird verwendet, um auf das Subversion-Repository zuzugreifen ).
Subclipse neigt dazu, im Laufe der Zeit unorganisiert zu werden. Wenn Eclipse nicht regelmäßig aktualisiert wird, scheint Subclipse seine Dateiverfolgungsinformationen zu verlieren. Ehrlich gesagt, da ich das Easy Explorer Plugin habe , verwende ich Subversive (gelegentlich) für Verlaufs- und Änderungsinformationen, aber ich erkunde TortoiseSVN einfach und verwende es für Commits und Aktualisierungen der Projekte, von denen ich weiß, dass ich sie kürzlich geändert habe.
quelle
Ich habe gerade festgestellt, dass ich nicht herausfinden kann, wie ein Eigenschaftendifferenz mit Subclipse angezeigt wird. In Subversive wählen Sie zwei Revisionen in der Verlaufsansicht aus, klicken mit der rechten Maustaste und wählen im Popup die Option Eigenschaften vergleichen. Das reicht mir, um bei Subversive zu bleiben.
Der Grund für den Versuch, zu wechseln, war das seltsame Verhalten von Subversive unter OS X: Ein automatischer Vorgang namens "SVN-Cache-Update" belastete die CPU nach jedem "SVN-Update" -Lauf auf abnormalen Ebenen, was immer ärgerlich lange dauerte.
quelle
FWIW, wir verwenden eine alte Version des SVN-Servers (1.4 etwas), und ich scheine mich zu erinnern, dass es irgendwann ein Update für Subclipse gab, das die Abwärtskompatibilität brach, und das Wesentliche war: "Niemand sollte auf einer so alten Version von sein SVN sowieso ".
Subversiv war der einzige, der mit der älteren Version umgehen konnte. Ich kann mich jedoch nicht an die Details erinnern, sorry.
quelle
Wir haben beide in unserem Team ausprobiert.
Da Subclipse (der von Galileo / Helios) Probleme bei der Authentifizierung unseres SVN-Servers über VAS hatte, hatten wir an anderer Stelle, dh im TortoiseSVN-Client, keine Probleme mit Browsern (außer Internet Explorer 7).
Also haben wir installiert
Subversive
und das Problem wurde behoben.quelle
Der Vorteil von Subclipse gegenüber Subversive ... ES FUNKTIONIERT WIRKLICH!
Ich habe Subclipse vor langer Zeit verwendet, als ich ein kollaboratives Plugin für Eclipse entwickelte, das von Subclipse abhing. Der Subclipse-Teil des Plugins war nie ein Problem, obwohl mich die ganze Ant- Sache immer noch ein bisschen verwirrt, aber der gute Teil ist, dass Sie nicht verstehen müssen, wie der Ant-Teil funktioniert, um zu wissen, wie man ihn benutzt.
Ich versuche heute, PDT (das ist ein ganz anderer Blog) und dann Subversive zu installieren, da es wie viele andere als "The Eclipse SVN Plugin" dargestellt wird. Ich konnte die vier Konnektoren nicht gleichzeitig installieren, daher musste ich sie einzeln installieren und nacheinander ausprobieren, und nacheinander konnte sie sich nicht beim SVN-Server authentifizieren.
Ich versuche PDT und Subversive, weil ich Zeit sparen möchte, ohne mehr davon für verschiedene Probleme mit einem Plugin auszugeben.
Ich habe Subversive deinstalliert, Subclipse installiert und einfach so verbunden.
Sparen Sie sich Zeit und Ärger, gehen Sie von Anfang an zu Subclipse.
quelle
Ich habe auch beide verwendet. Ich hatte das Problem, dass ich ungefähr 150 Projekte in meinem Arbeitsbereich habe und Subversive sehr lange dauern würde, wenn ich alle Plugins auswählte und "Repository synchronisieren" sagte. Die Benutzeroberfläche würde extrem lange einfrieren. Ich finde Subclipse stabiler.
Wie auch immer, ich kombiniere die Werkzeuge viel. Für einige Aufgaben wie das Auschecken ganzer Zweige bevorzuge ich die Befehlszeile. Für andere benutze ich TortoiseSVN . Ich verwende Subclipse hauptsächlich, um den Verlauf anzuzeigen und Vergleiche direkt im Tool durchzuführen und gelegentlich zu vergleichen (dafür bevorzuge ich jedoch Beyond Compare ).
quelle