Skip to content

Instantly share code, notes, and snippets.

@Danghor
Last active October 4, 2019 09:06
Show Gist options
  • Save Danghor/e118cef2ef3059760047795bed4f626f to your computer and use it in GitHub Desktop.
Save Danghor/e118cef2ef3059760047795bed4f626f to your computer and use it in GitHub Desktop.
Git vs. SVN
  • Lokale Branches erleichtern Abeit an mehreren Features gleichzeitig, wenn man bei einem Feature geblockt ist (z.B. Meeting bzgl. Architektur ausstehend)
  • Gute Integration in Visual Studio
  • lokale Operationen deutlich schneller als mit SVN
  • Arbeiten ohne Verbindung zum Server möglich (Zug, Homeoffice und VPN funktioniert gerade nicht etc.)
  • Änderungen in der History direkt in der IDE anschauen -> Syntaxhighlighting, Ordnerstruktur, mehrere Fenster
  • Staging Area geht nicht verloren, wenn man vor dem Commit doch noch Änderungen (usings aufräumen) am Code macht (Bei Tortoise SVN muss man wieder manuelle die Checkboxen setzen)
  • CodeLense zeigt mehr Daten an (Autor, letzte Änderung, wieviele Änderungen insgesamt etc.)
  • neu hinzugefügte Dateien sind offen sichtbar und müssen nicht extra rausgesucht werden, so können sie nicht vergessen werden
    • einfache .gitignore Datei, um Dateien zu verstecken, die nie eingecheckt werden -> so übersieht man nicht die neu hinzugefügten Dateien in dem ganzen Durcheinander
  • Git blame (annotate) scrollt nicht die gesamte Ansicht wieder hoch und entfernt Zeilennummern und Syntax Highlighting
  • vor dem Push kann einfacher ausprobiert werden, ob die Version genau so funktioniert, wie man sie committet hat
    • vermeidet das Scenario, dass lokal alles funktioniert, man eincheckt und der Build im TeamCity failed
  • Git Pickaxe, um die Dateien in der History im Volltext zu durchsuchen
  • Nahtlose Integration in TFS (Online und Offline)
  • Deutlich bessere Toolunterstützung
  • Bessere Visualisierung durch bessere Tools
  • Zusätzlicher Datensicherungsaspekt durch dezentrale Datenhaltung
  • GitHub gehört jetzt Microsoft (vermutlich bessere Weiterentwicklung)
  • Aktuelle Technologie ist Werbung für das Unternehmen
  • Versehentliche Commits nur schwer rückgängig zu machen, da sie direkt auf dem Server für alle sichtbar sind
  • Erst commit der eigenen Arbeit, dann merge. Bei SVN muss beides gleichzeitig geschehen, und die eigene Arbeit kann vernichtet werden, wenn beim mergen etwas schief geht
  • Bei einem SVN Merge sieht man neben den veränderten Dateien noch zusätzliche Metadaten, die SVN für die Mergeinformationen braucht -> Visual Clutter, gerade bei großen Merges
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment