Git ist ein kostenloses und quelloffenes verteiltes Versionskontrollsystem, das entwickelt wurde, um alles von kleinen bis sehr großen Projekten höchsteffizient zu verwalten. Es ist einfach einzurichten, zu erlernen und zu verwenden. Allerdings geht das Wissen über die Anwendung von Git von sehr einfach bis extrem komplex.
Git wird verwendet, um Änderungen an Quellcode zu verfolgen und die Arbeit an diesen Dateien unter mehreren Personen zu koordinieren. Git wurde 2005 von Linus Torvalds für die Entwicklung des Linux-Kernels erstellt und wird seitdem zur Verwaltung von Millionen anderer Softwareprojekte verwendet, darunter Google Chrome, Android und Swift. Heutzutage ist es das beliebteste Versionskontrollsystem unter Softwareentwicklungsteams. Git selbst ist ein Befehlszeilentool. Es gibt jedoch viele cloudbasierte und selbst gehostete Git-Applikationen, die Sie bei der Verwendung von Git unterstützen. Die bekanntesten sind GitHub, GitLab und Bitbucket.
Alternativ zu Git sollten Sie einen Blick auf Apache Subversion, Mercurial oder Perforce Helix Core werfen. Doch in diesem Beitrag vergleiche ich die verschiedenen Git-Applikationen.
GitLab
GitLab ist ein stolzer Sponsor des Git-Projekts. Das GitLab-Team hat viele Funktionen zum Projekt beigetragen und ist auch Maintainer einiger der am häufigsten verwendeten Git-Funktionen, darunter git-lfs, git-svn und git-credential-manager. GitLab kann entweder in der Cloud auf gitlab.com verwendet werden, oder Sie können GitLab auf Ihrem eigenen Server installieren. Abgesehen von Git bietet Ihnen GitLab ein Projektmanagement-Tool, CI/CD und viele andere coole Funktionen.
GitHub
GitHub ist ein webbasiertes Hosting-Service für Softwareentwicklungsprojekte, die das Git-Versionskontrollsystem verwenden. Es bietet alle Funktionen der verteilten Versionskontrolle und des Quellcode-Managements (SCM) von Git sowie eigene Zusatzfunktionen. Neben einer beliebten Plattform für Entwickler, um Code zu teilen, bietet GitHub auch soziale Netzwerkfunktionen wie Feeds, Follower, Wikis (mithilfe der Wiki-Software Gollum), Issues (oder Tickets) und ein integriertes Wiki. Die meisten Open-Source-Tools sind auf GitHub verfügbar, und wenn Sie sich trauen, können Sie sogar Bugfixes/Updates für viele dieser Open-Source-Projekte bereitstellen (natürlich nur, wenn Ihr Pull-Request überprüft und akzeptiert wurde).
Bitbucket
Bitbucket war ursprünglich ein unabhängiges Startup-Unternehmen, das 2008 von Jesper Nøhr gegründet wurde. Im Jahr 2010 wurde Bitbucket von Atlassian übernommen. Im Jahr 2015 benannte Atlassian sein Stash-Produkt in Bitbucket Server um. Im Jahr 2020 entfernte Bitbucket die Unterstützung für sein ursprüngliches Repository-Format Mercurial. Ähnlich wie GitLab kann Bitbucket entweder in der Cloud oder auf einer selbst gehosteten Instanz verwendet werden. Seit der Übernahme von Bitbucket durch Atlassian wird Bitbucket zunehmend in das Atlassian-Ökosystem (Jira, Confluence, Bamboo, Trello und viele andere) integriert.
Persönliche Anmerkung
Ich benutze Git seit 2015, nachdem ich Apache SVN verwendet habe (weit verbreitet an Universitäten), und es ist der Standardweg geworden, meinen Code zu bewahren und zu pflegen. Selbst private Projekte, die ich nur zu Bildungszwecken mache und die ich möglicherweise nie mit anderen teilen werde, speichere ich in GitLab und GitHub. Ich kann mich immer noch nicht entscheiden, welches mir besser gefällt. Wenn Sie eine Karriere in der Softwareentwicklung anstreben, beginnen Sie JETZT mit der Verwendung/Erlernung von Git! Selbst wenn Sie noch keine einzige Zeile Code geschrieben haben. Eines Tages werden Sie auf Git stoßen.
Wichtiger Hinweis
CI/CD, was nicht Teil von Git ist, aber stark auf GitHub, GitLab und anderen Websites unterstützt wird, ist ein wichtiger Bestandteil der Softwareentwicklung und -wartung. Sobald Sie eine dieser GitLab oder GitHub nutzen, werden Sie auf CI/CD stoßen. Ich werde CI/CD in einem weiteren Blogpost behandeln. Es gibt viele Tutorials über CI/CD online, wenn Sie nicht auf den Blogpost warten möchten.
Möchten Sie mehr über Git lernen?
Wenn Sie lernen möchten, wie man Git verwendet, empfehle ich Ihnen, sich die folgenden Videos anzusehen und sich ein Konto auf GitHub einzurichten. Die Benutzeroberfläche ist sehr einfach und übersichtlich. GitLab hingegen kann aufgrund seiner vielen Funktionen überwältigend wirken, definitiv aber einen Blick wert!