Close

Das Management von Quellcode

Das Quellcodemanagement wird verwendet, um Änderungen an einem Quellcode-Repository nachzuverfolgen. Es zeichnet den Verlauf von Änderungen an einer Codebasis auf und hilft bei der Lösung von Konflikten, wenn Aktualisierungen von mehreren Mitwirkenden zusammengeführt werden. Das Quellcodemanagement ist außerdem ein Synonym für Versionskontrolle.

Da bei Softwareprojekten die Anzahl der Codezeilen und Beitragenden zunimmt, steigen auch die Kosten für den Kommunikationsaufwand und die Komplexität des Managements. Das Quellcodemanagement ist ein wichtiges Instrument, um die organisatorische Belastung durch steigende Entwicklungskosten zu verringern.


Die Bedeutung von Tools für das Quellcodemanagement


Wenn mehrere Entwickler in einer gemeinsam genutzten Codebasis arbeiten, kommt es häufig vor, dass Änderungen an freigegebenem Code vorgenommen werden. Es kommt vor, dass einzelne Entwickler an einem scheinbar isolierten Feature arbeiten, das jedoch ein Modul für freigegebenen Code verwendet. So kann es passieren, dass Entwickler 1, der an Feature 1 arbeitet, einige Änderungen vornimmt und später herausfindet, dass Entwickler 2, der an Feature 2 arbeitet, widersprüchliche Änderungen gemacht hat.

Vor der Einführung des Quellcodemanagements war dies ein Horrorszenario. Entwickler bearbeiteten Textdateien direkt und verschoben sie mithilfe von FTP oder anderen Protokollen auf verschiedene Remote-Standorte. Entwickler 1 nahm Änderungen vor und Entwickler 2 überschrieb mit seinen gespeicherten Änderungen unwissentlich die Arbeit von Entwickler 1. Die Rolle des Quellcodemanagements als Schutzmechanismus gegen dieses spezifische Szenario wird als Versionskontrolle bezeichnet.

Mit dem Quellcodemanagement wurden Sicherheitsmaßnahmen für die Versionskontrolle eingeführt, um Arbeitsausfälle aufgrund von widersprüchlichen Überschreibungen zu verhindern. Durch sie werden die Änderungen jedes einzelnen Entwicklers verfolgt, Konfliktbereiche identifiziert und Überschreibungen verhindert. Durch das Quellcodemanagement werden diese Konfliktpunkte den Entwicklern mitgeteilt, damit sie diese zur Sicherheit überprüfen und beheben können.

Dieser grundlegende Mechanismus zur Konfliktverhütung hat den Nebeneffekt, dass dem Entwicklerteam eine passive Kommunikation ermöglicht wird. Das Team kann dann die laufenden Arbeiten, die das Quellcodemanagement überwacht, beobachten und besprechen. Das Quellcodemanagement verfolgt den gesamten Verlauf von Änderungen an der Codebasis nach. Auf diese Weise können Entwickler Änderungen untersuchen und überprüfen, die eventuell zu Bugs oder Rückschritten geführt haben.

Git-Logo
Zugehöriges Material

Git-Merkzettel

Bitbucket-Logo
Lösung anzeigen

Git kennenlernen mit Bitbucket Cloud

Die Vorteile des Quellcodemanagements


Neben der Versionskontrolle bietet Quellcodemanagement eine Reihe weiterer hilfreicher Funktionen, um die kollaborative Codeentwicklung benutzerfreundlicher zu gestalten. Sobald das Quellcodemanagement mit der Nachverfolgung aller Änderungen an einem Projekt begonnen hat, wird eine detaillierte Aufzeichnung für die gesamte Projektlebensdauer erstellt. Dieser historische Datensatz kann dann verwendet werden, um Änderungen an der Codebasis rückgängig zu machen. Das Quellcodemanagement kann die Codebasis umgehend auf einen früheren Zeitpunkt zurücksetzen. Dies ist extrem nützlich, um Rückschritte bei Aktualisierungen zu verhindern und Fehler zu korrigieren.

Das Quellcodemanagement-Archiv für jede Änderung, die während der gesamten Projektlebensdauer vorgenommen wird, enthält wertvolle Informationen über die Versionshinweise eines Projekts. Ein übersichtliches und gepflegtes Quellcodemanagement-Verlaufsprotokoll kann problemlos als Ersatz für diesen Versionshinweis verwendet werden. Dieser bietet Erkenntnisse und transparente Einblicke in den Fortschritt eines Projekts, die mit Endbenutzern oder Teams geteilt werden können, die nichts mit der Entwicklung zu tun haben.

Das Quellcodemanagement reduziert den Kommunikationsaufwand eines Teams und erhöht die Release-Geschwindigkeit. Ohne Quellcodemanagement ist die Entwicklung langsamer, da die Mitwirkenden mehr Mühe mit der Planung einer nicht überlappenden Entwicklungssequenz für den Release haben. Dank dem Quellcodemanagement können Entwickler unabhängig voneinander an getrennten Branches der Feature-Entwicklung arbeiten und diese schließlich mergen.

Insgesamt unterstützt das Quellcodemanagement Engineering-Teams nicht unwesentlich dabei, Entwicklungskosten durch die effizientere Ausführung von technischen Ressourcen zu reduzieren. Das Quellcodemanagement ist ein Muss in der modernen Softwareentwicklung. Professionelle Teams nutzen die Versionskontrolle bereits und dein Team sollte dies auch.

Best Practices für das Quellcodemanagement


Führe häufig Commits durch

Commits sind günstig und einfach zu bewerkstelligen. Sie sollten häufig durchgeführt werden, um Aktualisierungen einer Codebasis zu erfassen. Jeder Commit ist ein Snapshot, auf den die Codebasis bei Bedarf zurückgesetzt werden kann. Häufige Commits bieten viele Möglichkeiten, Arbeiten rückgängig beziehungsweise ungeschehen zu machen. Eine Gruppe von Commits kann mithilfe eines Rebase zu einem einzigen Commit kombiniert werden, um den Entwicklungsverlauf zu verdeutlichen.

Stelle sicher, dass du mit der neuesten Version arbeitest

Quellcodemanagement ermöglicht schnelle Updates von mehreren Entwicklern. Es kann leicht passieren, dass eine lokale Kopie der Codebasis hinter die globale Kopie fällt. Stelle sicher, dass du git pull anwendest oder den neuesten Code abrufst, bevor du Aktualisierungen vornimmst. Dies hilft dir dabei, Konflikte beim Mergen zu vermeiden.

Mache ausführliche Notizen

Jeder Commit hat einen entsprechenden Protokolleintrag. Zum Zeitpunkt der Commit-Erstellung wird dieser Protokolleintrag mit einer Meldung gefüllt. Es ist wichtig, anschauliche erklärende Commit-Protokollmeldungen zu hinterlassen. Diese Commit-Protokollmeldungen sollten das "Warum" und "Was" von Commit-Inhalten erklären. Sie werden zum kanonischen Verlauf der Projektentwicklung und hinterlassen zukünftigen Mitwirkenden eine Richtschnur, an die sie sich halten können.

Prüfe Änderungen vor dem Committen

Quellcodemanagement-Lösungen bieten einen Staging-Bereich. Dieser kann verwendet werden, um eine Gruppe von Änderungen zu sammeln, bevor sie in einen Commit geschrieben werden. Der Staging-Bereich kann dazu genutzt werden, Änderungen vor dem Erstellen des Commit-Snapshots zu verwalten und zu überprüfen. Wenn du den Staging-Bereich auf diese Weise verwendest, wird ein Pufferbereich bereitgestellt, in dem Inhalte des Commits verfeinert werden können.

Verwende Branches

Branching ist ein leistungsstarker Quellcodemanagement-Mechanismus, mit dem Entwickler eine separate Entwicklungslinie erstellen können. Branches sollten häufig verwendet werden, da sie schnell und kostengünstig sind. Sie ermöglichen es mehreren Entwicklern, gleichzeitig an getrennten Entwicklungslinien zu arbeiten. Bei diesen Entwicklungslinien handelt es sich in der Regel um unterschiedliche Produktmerkmale. Wenn die Entwicklung in einem Branch abgeschlossen ist, wird sie in die Main-Entwicklungslinie gemergt.

Einigt euch auf einen Workflow

Standardmäßig bieten Quellcodemanagement-Lösungen sehr freie Methoden für Beiträge. Daher sollten sich Teams unbedingt auf gemeinsame Muster für die Zusammenarbeit einigen. Quellcodemanagement-Workflows legen Muster und Prozesse für das Mergen von Branches fest. Wenn sich ein Team nicht für einen gemeinsamen Workflow entscheidet, kann dies zu ineffizienter Kommunikation führen, wenn es um das Mergen von Branches geht.

Zusammenfassung


Das Quellcodemanagement ist ein unschätzbares Tool für die moderne Softwareentwicklung. Erfolgreiche Softwareteams verwenden Quellcodemanagement und dein Team sollte es auch. Das Quellcodemanagement lässt sich sehr einfach für ein neues Projekt einrichten und der ROI kann sich sehen lassen. Atlassian bietet einige der besten Quellcodemanagement-Integrationstools der Welt, die dir den Einstieg erleichtern.


Diesen Artikel teilen
Nächstes Thema

Lesenswert

Füge diese Ressourcen deinen Lesezeichen hinzu, um mehr über DevOps-Teams und fortlaufende Updates zu DevOps bei Atlassian zu erfahren.

Mitarbeiter arbeiten mit unzähligen Tools zusammen

Bitbucket-Blog

Abbildung: DevOps

DevOps-Lernpfad

Demo Den: Feature-Demos mit Atlassian-Experten

So funktioniert Bitbucket Cloud mit Atlassian Open DevOps

Melde dich für unseren DevOps-Newsletter an

Thank you for signing up