# Eclipse Versionsverwaltung .. wie?



## Kusarr (12. Juni 2016)

Guten Abend 

Mein grundlegendes Problem: Meine Java-Projekte zwischen meinem PC und meinem Laptop synchron zu halten.

Anfangs hatte ich TFS (Team-Foundation-Server) genutzt. Das macht aber unter Eclipse mächtig zicken, is halt eig für VisualStudio ..
Im Moment mach ichs nun so, dass ich meine Projekte einfach in Onedrive kopiere. da synchroniesiert sichs dann und ich importiers dann am Laptop halt rein ... Umständlich! ...

Ich bin jetzt schon über GIT, GitHub, SVN gestoßen, blick aber nicht so recht durch und weiß au ned, was ich davon nutzen sollte.

Könnt ihr mir da weiterhelfen? Wie vorgehen?

Vielen Dank


----------



## makrogame (12. Juni 2016)

Was waren denn deine Anhaltspunkte ?


----------



## taks (12. Juni 2016)

Also ich hab mit GIT und SVN gearbeitet und muss sagen, dass mir SVN besser gefällt.
Git ist vorallem mit GITHUB zwar sehr populär um Code zu teilen, jedoch find ich die Logik rund ums comitten ein bisschen komisch.
Also ich würd SVN nehmen mit dem TortoiseSVN-Client.
Da kannst du einfach im Explorer deine Ordner/Dateien commiten, updaten oder löschen.
Find ich angenehmer als direkt in der Entwicklungsumgebung.


----------



## Kusarr (12. Juni 2016)

@taks okay das hört sich gut an. muss ich da einfach nur n plug-in im eclipse-marketplace installieren?

Subversive - SVN Team Provider 3.0.0 gäbe es da. Das instellieren würd ich schätzen?!


----------



## taks (12. Juni 2016)

Wie gesagt, ich benutze ein separates Programm ausserhalb der IDE. Aber es gibt vermutlich auch Plugins.
Dazu musst du noch einen SVN-Server aufsetzen.

Bei Git gibt es ein Plugin und das kannst du dann mit deiner Github verbinden. Da musst du keinen Server installieren.
Aber ich hatte bei Git andauernd Konflikte und hab fast mehr Zeit mit dem reparieren des Repositories anstatt coden verbracht...
Vllt. war ich aber auch nur zu dumm dafür ^^


----------



## lowskill (13. Juni 2016)

SVN?
**auf den Kalender guck*
*Ja, wir haben tatsächlich schon das Jahr 2016...seltsam. 

Ich würde nur noch auf DVCS setzen. Git hat sich hier wohl inzwischen durchgesetzt, aber auch Mercurial ist einen Blick wert. Um mal ein Gefühl zu bekommen, wie man mit Git arbeitet, ist das 15-minütige, interaktive Tutorial auf Github nicht schlecht. Zur Integration in Eclipse kann man z.B. EGit verwenden. Ich persönlich arbeite ganz gerne mit SourceTree. Ist eine wirklich gut durchdachte, ausgereifte und auch relativ intuitiv benutzbare GUI für Git und Mercurial.

Was den Austausch zwischen deinen Repositories angeht, gibt es bei Git zahlreiche Möglichkeiten: http://www.jedi.be/blog/2009/05/06/8-ways-to-share-your-git-repository/

Theoretisch reicht hier schon eine Dateifreigabe im LAN. Wenn du ein zentrales Repo willst, dass auch von untewegs erreichbar ist, bietet sich Github an. Es würde aber auch einfach schon ein Server mit SSH-Zugang reichen.


----------



## Kusarr (13. Juni 2016)

also hab jetz mal svn plug-in installiert und finds eig bis jetz echt klasse. läuft gut.
Als Server hab ich Assembla mir nen Acc eingerichtet. Auch super.

EDIT: was hier stand hat sich erledigt ^^

Also bin zufrieden wies etz is. Vielen Dank 

Kann für Leute, die TFS von VisualStudio kennen SVN mit Assembla echt empfehlen


----------



## lowskill (13. Juni 2016)

_SVN_ und _empfehlen_ in einem Satz?


----------



## taks (13. Juni 2016)

lowskill schrieb:


> _SVN_ und _empfehlen_ in einem Satz?



Solltest du vielleicht auch mal versuchen, nicht nur darüber herziehen


----------



## lowskill (13. Juni 2016)

Ich war schon genötigt damit zu arbeiten. In den letzten Jahren hatte ich allerdings das Vergnügen meistens Git verwenden zu können. Sogar TFS unterstützt inzwischen Git.

Nach deinen Ausführungen zu urteilen, hast du dich hingegen bisher allerdings kaum mit Git beschäftigt. 



> Logik rund ums comitten ein bisschen komisch


----------



## taks (13. Juni 2016)

lowskill schrieb:


> Ich war schon genötigt damit zu arbeiten. In den letzten Jahren hatte ich allerdings das Vergnügen meistens Git verwenden zu können. Sogar TFS unterstützt inzwischen Git.
> 
> Nach deinen Ausführungen zu urteilen, hast du dich hingegen bisher allerdings kaum mit Git beschäftigt.



Doch, drei Jahre lang. Aber es taugt mir trotzdem nicht ^^


----------



## lowskill (13. Juni 2016)

Man kann sich auch drei Jahre lang nur oberflächlich mit einer Sache beschäftigen, ohne sie wirklich zu begreifen. Anders ist deine Aussage bezüglich der "komischen Logik" für mich nicht nachvollziehbar.


----------



## Olstyle (13. Juni 2016)

Und vielleicht mal Mercurial ansehen. Das orientiert sich mehr an SVN, bringt aber trotzdem die Vorteile eines DVCS.


----------



## lowskill (13. Juni 2016)

Hatte ich auch schon empfohlen, aber was der Bauer nicht kennt, frisst er bekanntlich nicht.


----------



## Olstyle (13. Juni 2016)

Kein Grund unfreundlich zu werden. 
Der Grundgedanken ist nun mal ein ganz Anderer als bei zentralisierten Systemen. Und die sind auch nicht grundsätzlich schlecht, das kommt ganz auf den Gesamtworkflow und Infrastruktur an. Solang man das System alleine benutzt macht es sowieso gar keinen Unterschied. Da ist eh immer alles was man macht Head, egal was da wie verwaltet und in welcher Form Branches erlauben würde.


----------



## lowskill (13. Juni 2016)

Ist nun mal eine Tatsache. Ist ja nicht das erste mal, dass ich es mit eingefleischten SVN-Fans zu tun habe.

DVCS haben auch für einen Einzelentwickler Vorteile. Der Größte ist wohl, dass man nicht auf eine Netzwerkverbindung angewiesen ist, was je nach Situation wirklich Gold wert sein kann.

Zentralisierte Systeme bieten gegenüber Dezentralen, meiner Meinung nach, keinerlei Vorteil. Zumal man mit Git auch problemlos einen SVN-Workflow nachempfinden kann, wenn man ein zentrales Repo verwendet. Git ist einfach deutlich flexibler und lässt diverse Workflows zu. Ich sehe jedenfalls, abgesehen von der Faulheit, sich auf etwas Neues einzulassen, keinen Grund, weiterhin an SVN festzuhalten.


----------



## Kusarr (15. Juni 2016)

Leute, ich mag einfach nur meine Projekte zwischen PC und Notebook synchron halten, und ich finde da macht SVN und der Assembla-Server gute Arbeit.

Habe mit beidem noch nie gearbeitet, aber GIT sah hier wirklich deutlich komplizierter aus drum hab ich mich nun mal für SVN entschieden und bereue es nicht 

Iowkskill, wenn du GIT mehr magst, is das doch in Ordnung


----------



## lowskill (15. Juni 2016)

Wenn du selbst von Git überfordert bist, solltest du das mit dem Programmieren eventuell besser bleiben lassen. Die Software heißt übrigens Git, nicht GIT.


----------



## Olstyle (15. Juni 2016)

Wenn du alleine bist und nur die Dateien synchronisieren willst ist die einfachste Lösung immer noch das Projekt direkt in der Dropbox(bzw. onedrive etc.) zu haben. Mit Versionsverwaltung hat das ja erst mal nichts zu tun.


----------



## Kusarr (16. Juni 2016)

@Iowskill ... wie alt bist du? ... 12? Langsam wirds echt lächerlich, was du da von dir gibst.

@Olstyle: Wenn dann gleich richtig. Mit Onedrive/Dropbox glaub ich nicht, dass das so smart läuft. Hab ja OneDrive und halte da einige Ordner drüber synchron. geht auch recht gut nur manchmal bugts bissl rum. Will ich bei meinen Projekten nich ham


----------



## lowskill (16. Juni 2016)

Findest du Lächerlich, dass ich deine Fehler korrigiere oder dass ich deine Fähigkeiten anzweifle, weil dich Git anscheinend überfordert? Nur, damit es zu keinem Missverständnis kommt.


----------



## Olstyle (16. Juni 2016)

Kusarr schrieb:


> @Olstyle: Wenn dann gleich richtig. Mit Onedrive/Dropbox glaub ich nicht, dass das so smart läuft. Hab ja OneDrive und halte da einige Ordner drüber synchron. geht auch recht gut nur manchmal bugts bissl rum. Will ich bei meinen Projekten nich ham


Eine Versionsverwaltung hat natürlich schon ihre Vorteile, aber wenn du vorm öffnen des Projektes auf die Synchronisierung wartest(was du bei SVN etc. ja auch musst) wird so ein automatisch aktualisierter Ordner auch immer funktionieren.

@lowskill: Bitte freundlich bleiben!


----------

