Wer von euch verwendet git?



  • Ich verwende git für meine Debian/Games Team Pakete, privat bevorzuge ich Mercurial, das ist unter anderem von den Befehlen «SVN kompatibler» 😉

    Richtig gut an git finde ich alerdings die mv detection, bei svn musste man immer daran denken svn mv zu verwenden, mit git verschiebe ich Dateien (Benenne sie um, ...) wie ich will und git erkennt das, keine History geht verlohren 👍



  • Was hat geometrische Invariantentheorie mit Programmierung zu tun?



  • bei uns in der Arbeit wird gerade diskutiert, ob wir von svn auf git umsteigen sollten. Ich hab relativ keine Meinung dazu, weil ich nicht so recht verstehe, welche Vorteile git (bzw. distributed revision control systems) gegenüber svn hat. Was sind genau die Unterschiede? Ich denke nicht, dass git universall einsetzbar ist, oder doch?



  • supertux schrieb:

    bei uns in der Arbeit wird gerade diskutiert, ob wir von svn auf git umsteigen sollten. Ich hab relativ keine Meinung dazu, weil ich nicht so recht verstehe, welche Vorteile git (bzw. distributed revision control systems) gegenüber svn hat. Was sind genau die Unterschiede? Ich denke nicht, dass git universall einsetzbar ist, oder doch?

    Bei einem DVCS kann man eben getrennt von den anderen Programmierern entwickeln. Man kann das VCS wirklich als "Projekt-Tagebuch" und Backup benutzen. Ein nicht-DVCS dient dagegen im Grund ja nur dazu um Code auszutauschen.

    Speziell gegenüber SVN hat git den Vorteil, dass git viel viel schneller ist und viel viel weniger Platz braucht. In git sind die Reps oft kleiner, als ein einzelner Checkout in SVN! Branching/Merging ist wesentlich einfacher, als in SVN. Somit kann die Projektentwicklung viel sauberer ablaufen. Anstelle das alle Programmierer wild an einem Quellcode rumstochern, kann man experimentelle Features ohne Probleme unabhängig vom zentralen Verzeichnis entwickeln und dann eben einspielen, wenn sie akzeptabel für die Hauptbranch sind. Allein dieses Feature sorgt imho für deutlich sauberere Projekte.

    Naja, schau dir einfach mal den Vortrag von Linus an (siehe mein youtube-Link).



  • rüdiger schrieb:

    Bei einem DVCS kann man eben getrennt von den anderen Programmierern entwickeln. Man kann das VCS wirklich als "Projekt-Tagebuch" und Backup benutzen. Ein nicht-DVCS dient dagegen im Grund ja nur dazu um Code auszutauschen.

    Speziell gegenüber SVN hat git den Vorteil, dass git viel viel schneller ist und viel viel weniger Platz braucht. In git sind die Reps oft kleiner, als ein einzelner Checkout in SVN! Branching/Merging ist wesentlich einfacher, als in SVN. Somit kann die Projektentwicklung viel sauberer ablaufen. Anstelle das alle Programmierer wild an einem Quellcode rumstochern, kann man experimentelle Features ohne Probleme unabhängig vom zentralen Verzeichnis entwickeln und dann eben einspielen, wenn sie akzeptabel für die Hauptbranch sind. Allein dieses Feature sorgt imho für deutlich sauberere Projekte.

    Naja, schau dir einfach mal den Vortrag von Linus an (siehe mein youtube-Link).

    Also ich habe git auch noch nicht eingesetzt oder angeschaut, hab heut zum mittag jedoch mal den youtube-link angeschaut. Ich muss sagen, was der Linus da sagt, ist durchaus logisch und eigentlich ziemlich cool.

    VOr allem der psychologische Vorteil bei git, dass man eben keinen developer-acess braucht, um code einfach beizusteuern, ist ziemlich wertvoll für opensourceprojekte.
    Zur Performance kann ich nix sagen, aber linus ist ja fest von git überzeugt ;). Also der Vortrag lohnt sich echt anzuschauen.

    Allerdings denke ich, dass sich git erst ab mindestens 3 entwicklern lohnt, vorher ist das ja auch wie svn 🙂



  • Maxi schrieb:

    Allerdings denke ich, dass sich git erst ab mindestens 3 entwicklern lohnt, vorher ist das ja auch wie svn 🙂

    Nein, git lohnt sich schon für 1 Programmierer. Allein um es als Backup und "Projekttagebuch" zu nutzen. Aber auch alleine lohnt es sich Branches zu machen. Dies sorgt einerseits für Ordnung und oft passiert es zB ja, dass man ein Feature implementiert und dabei merkt, dass sich im Originalcode ein Bug befindet oä und so kann man einfach den Bug fixen und neu releasen, ohne das man mit dem Code des neuen Features kollidiert.

    Und gerade wenn man Hobbymäßig entwickelt lohnen sich DVCS. Wenn man zB auf einer längeren Bahn- oder Flugreise entwickelt (geht sehr gut, da man wenig abgelenkt wird) hat man ja idr kein Internet zur Verfügung und kann nicht zum Server commiten.



  • rüdiger schrieb:

    Und gerade wenn man Hobbymäßig entwickelt lohnen sich DVCS. Wenn man zB auf einer längeren Bahn- oder Flugreise entwickelt (geht sehr gut, da man wenig abgelenkt wird) hat man ja idr kein Internet zur Verfügung und kann nicht zum Server commiten.

    sofern man den aktuellen head hat...

    ne git sieht schon gut aus, das einzige problem mit git ist die fehlende integration mit visual studio und netbeans. eclipse gibts ja schon IIRC aber generell steht die integration da noch am anfang...

    ich verwende noch ein altes Visual Source Safe und das ist ehrlich gesagt grottig was branches betrifft, aber was es eben kann ist komplett transparent sein waehrend der entwicklung. branchen ist dann aergerlich aber haelt sich in grenzen da ich meistens nur mich als entwickler habe und nur sehr selten mehrerer andere...

    der vorteil von vss hier ist aber, die integration ins visual studio - das ist einfach angenehm so zu commiten oder checkouts zu machen.



  • Gibt es sowas wie Tortoise(SVN/CSV) für git?



  • btw. wer zu SVN genötigt wird kann SVN prima mit git-svn zusammen benutzen. Damit kann man via git einen SVN Server ansprechen.

    frenki schrieb:

    Gibt es sowas wie Tortoise(SVN/CSV) für git?

    Git unter Windows ist wohl noch keine ausgereifte Sache. Ein Anfang ist wohl http://code.google.com/p/msysgit/

    Shade Of Mine schrieb:

    branchen ist dann aergerlich aber haelt sich in grenzen da ich meistens nur mich als entwickler habe und nur sehr selten mehrerer andere...

    Branchen ist auch toll wenn man alleine arbeitet. Ganz ehrlich: Wenn man einmal mit einem VCS gearbeitet hat, bei dem branchen und mergen total einfach ist, dann will man das nicht mehr missen. Egal ob man alleine oder mit 100+ Leuten arbeitet!



  • rüdiger schrieb:

    Branchen ist auch toll wenn man alleine arbeitet. Ganz ehrlich: Wenn man einmal mit einem VCS gearbeitet hat, bei dem branchen und mergen total einfach ist, dann will man das nicht mehr missen. Egal ob man alleine oder mit 100+ Leuten arbeitet!

    tja, lustigerweise haben alle meine auftraggeber die ein vcs verwendet haben immer cvs verwendet...

    mal sehen wie git unter mac os x klar kommt, vielleicht kann ich es ja in der firma mal durchsetzen 😉



  • Shade Of Mine schrieb:

    rüdiger schrieb:

    Branchen ist auch toll wenn man alleine arbeitet. Ganz ehrlich: Wenn man einmal mit einem VCS gearbeitet hat, bei dem branchen und mergen total einfach ist, dann will man das nicht mehr missen. Egal ob man alleine oder mit 100+ Leuten arbeitet!

    tja, lustigerweise haben alle meine auftraggeber die ein vcs verwendet haben immer cvs verwendet...

    Viele Leute kennen leider nur so alte und schlechte Tools.

    mal sehen wie git unter mac os x klar kommt, vielleicht kann ich es ja in der firma mal durchsetzen 😉

    Unter OS X ist git kein Problem.



  • Shade: Nur um den Umstieg ein bisschen zu erleichtern soeben aus meinem del.icio.us herausgekramt:

    http://git-scm.com/
    http://github.com/blog/120-new-to-git
    http://zrusin.blogspot.com/2007/09/git-cheat-sheet.html
    http://github.com/

    Zum Thema: *aufzeig* (Verwende aber privat in erster Linie darcs, womit ich auch sehr zufrieden bin.)



  • nman schrieb:

    Shade: Nur um den Umstieg ein bisschen zu erleichtern soeben aus meinem del.icio.us herausgekramt

    danke, aber vor den wahlen ende september bleibt bei uns wohl kaum eine minute luft - geschweige denn das vcs system umzustellen. aber danke fuer die links, sie sind mal gespeichert 🙂



  • Klingt ja alles echt ziemlich cool, mir gefällt git von Minute zu Minute besser.

    @Shade, wozu brauchst du diesen "Transparenten" Zugriff? Das Arbeiten mit git ist doch transparent, da du ja nicht auschecken musst und einfach drauf laus schreiben kannst. Und die Befehle beschränken sich ja auf ein paar wenige die man bequem per Konsole eingeben kann.

    Übrigens Emacs hat bereits ne ordentliche Integration und wer Ubuntu verwendet hat beim Installieren von git schon alles notwendige unter /usr/share/doc/git-<ka-was>/<ka-was>/emacs (sitz grad nicht vor ner Linux-Kiste sonst würd ich nachschauen).

    Wie steht es mit Binärdateien, gibt es dafür auch ne ordentliche Unterstützung?



  • Linux-Progger schrieb:

    @Shade, wozu brauchst du diesen "Transparenten" Zugriff? Das Arbeiten mit git ist doch transparent, da du ja nicht auschecken musst und einfach drauf laus schreiben kannst. Und die Befehle beschränken sich ja auf ein paar wenige die man bequem per Konsole eingeben kann.

    ich mag nicht dauernd händisch commits/checkouts machen müssen.

    ich mag mich nicht darum kümmern müssen. denn alles was ich manuell mache, vergess ich irgendwann... ist mir bei cvs ein paarmal passiert dass ich vergessen habe meine änderungen zu commiten und am nächsten tag dann noch ordentliches commit messages schreiben... ne danke.


Anmelden zum Antworten