2010-03-25 7 views
13

ich, wie viele andere, liebe Eclipse als meine Idee der Wahl, und wegen der Art, wie ich arbeite (Umzug, verschiedene Orte, verschiedene Projekte) wollen Git für verwenden CVS.Wie mische ich mit Git, Eclipse und Egit

Es gibt ein Plugin für Git in Eclipse, Egit, das jetzt ein offizielles Eclipse-Projekt ist, und derzeit in der Version 0.7.1. Als ich gerade damit angefangen habe, interessiert mich, wie andere es benutzen und welche Arbeitsumgebungen sie verwenden. Momentan hat Egit keine Unterstützung für Merges, daher müssen diese außerhalb von Eclipse durchgeführt werden und der Arbeitsbereich muss aktualisiert werden.

Also, wie machst du diese Aufgabe? (und alle anderen Aufgaben, die Egit gerade nicht macht)

Antwort

9

Bei der Arbeit mit Eclipse verwende ich nur Egit, um tatsächlich zu committen. Alles andere mache ich einfach über die Kommandozeile. Die Befehlszeile in git (oder einem anderen VCS) ist viel besser und die Software wurde tatsächlich unter Berücksichtigung der Befehlszeile erstellt, so dass Sie natürlich auf jedes einzelne Feature über die Befehlszeile zugreifen können.

Alles andere verwendet nur die Befehlszeile im Hintergrund und versucht, eine andere Schnittstelle zu emulieren, die nativ zur Host-Anwendung (hier: Eclipse) ist. Aber damit erreichen Sie niemals die gleiche Kraft wie mit den Originalwerkzeugen.

Allerdings denke ich, wenn Egit mehr entwickelt, könnte es eine gute Möglichkeit sein, mit Git zu arbeiten; ähnlich wie das Subversion-Plugin für Eclipse mit den meisten Funktionen funktioniert. Aber in meiner Situation verwende ich Eclipse nicht für alles und die Verwendung der Befehlszeile ist dann viel einfacher als zu versuchen, sich an mehrere verschiedene Plugins und die Befehlszeile zu gewöhnen.

+0

Das scheint mir sinnvoll. Während der Arbeit mit Eclipse können Sie Dateien zu Ihrem lokalen Repo hinzufügen und sie committen, während Sie fortfahren, und dann zum Zusammenführen verwenden Sie die Befehlszeile. Vielen Dank. – PaulHurleyuk

+1

EGit ist jetzt reif genug und hat auch ein Merge-Tool. – thSoft

+0

@thSoft IMHO, EGit ist immer noch nicht "reif genug" ab Februar 2014. Mit EGit gibt es zur Zeit keine intuitive GUI-Möglichkeit, ein einfaches 'git merge theirs' zu machen. Es ist besser mit dem CLI gemacht. – Abdull

28

Als Referenz unterstützt EGIT jetzt Zusammenführungen und verwendet die leistungsstarke Diff-Schnittstelle in Eclipse.

Sobald Sie den Code abgerufen und eine Zusammenführung ausgeführt haben, werden Konflikte im Projektexplorer mit einem roten hervorgehoben, und Sie können dann mit der rechten Maustaste darauf klicken und zu Team> Zusammenführen-Tool wechseln -ghosted für konfliktbehaftete Dateien.

Sobald Sie den Code ausgewählt haben, den Sie verwenden möchten (entweder die Workspace-Version mit Diff-Annotationen oder die HEAD-Version, die den Konflikt verursacht hat), öffnet sich das Diff-Fenster.

Dies zeigt Ihren lokalen Code auf der linken Seite und den widersprüchlichen Code auf der rechten Seite, können Sie die "nächste Differenz" -Taste, um durch alle Konflikte zu springen, und die "Kopie von rechts nach links kopieren", um die akzeptieren Remote-Version, oder bearbeiten Sie einfach Ihre lokale Version an Ort und Stelle.

Sobald Sie mit den Änderungen zufrieden sind speichern Sie Ihre Datei und fügen Sie sie hinzu, dann bestätigen Sie die Ergebnisse und Sie sollten fertig sein.

Bitte beachten Sie, ich bin in keiner Weise ein Meister der guten Praxis git, also bitte fühlen Sie sich frei, mich zu korrigieren, wenn dies nicht die besten Operationen zu verwenden, aber es war eine Antwort auf die Frage "Wie mache ich merges in Sonnenfinsternis mit Egit ".

-1

Eine Möglichkeit, mit Egit Merge Konflikt auszukommen, ist es, eine Sicherungskopie Ihrer Datei zu erstellen, sie aus der Eclipse zu löschen, sie aus der Sicherungskopie wiederherzustellen, zum Index hinzuzufügen und zu committen.

Dies sollte nur durchgeführt werden, wenn Sie den Konflikt mit der normalen Methode zum Hinzufügen zu Index-> ​​Commit nicht lösen können.

PS: Ich nehme an, Sie haben den Konflikt bereits manuell oder mithilfe von Egit Merge-Tool gelöst, aber nur die Konfliktmarke in der Datei nicht entfernen können.

Verwandte Themen