Code-Review in Bitbucket Cloud
Ziel
Erstelle ein Repository und füge jemanden als Reviewer zu deiner Pull-Anfrage hinzu, um mit der Zusammenarbeit an deinem Code zu beginnen.
Haftungsausschluss: Der folgende Abschnitt dieses Tutorials beschreibt die Schritte zum Hinzufügen eines Reviewers (oder Teammitglieds) zu deiner Pull-Anfrage, damit ihr in Bitbucket Cloud gemeinsam an Code arbeiten könnt. Wenn du nicht mit einem Teammitglied arbeitest oder zu diesem Zeitpunkt keine Reviewer hinzufügen musst, kannst du gerne zum nächsten Tutorial wechseln: So funktioniert Branching in Bitbucket Cloud.
Übersicht zur Aufgabe
Bis jetzt hast du allein in deinen Repositorys und an deinem Code gearbeitet. Aber was wäre, wenn du deinen Code von jemandem überprüfen lassen und Feedback dazu erhalten möchtest? Du kannst genau das erreichen, indem du deiner Pull-Anfrage einen Reviewer hinzufügst – egal, ob ihr euch im selben Raum oder an verschiedenen Orten auf dem Globus befindet.
Zeit
15 Minuten
Zielpublikum
- Du hast etwas Erfahrung mit Bitbucket Cloud. Falls nicht, probiere eines unserer Anfänger-Tutorials aus.
- Für diejenigen, die lieber eine Git-GUI mit Bitbucket Cloud verwenden
Informationen zu Branches und Pull-Anfragen
Wenn du in einem Team mit mehreren Bitbucket-Benutzern arbeitest, solltest du an deinem eigenen Codesatz separat von der Haupt-Codebasis arbeiten. Mit Branches kannst du genau das tun. Ein Branch ist eine unabhängige Entwicklungslinie für dein Repository. Stell ihn dir vor wie ein komplett neues Arbeitsverzeichnis inklusive neuer Staging-Umgebung und neuem Projektverlauf. Nachdem du einen Branch erstellt hast, überträgst du den Code, an dem du arbeitest, per Commit in den Branch, pullst Updates aus Bitbucket, um deinen Branch auf dem aktuellen Stand zu halten, und pushst dann deine ganze Arbeit in Bitbucket.
Sobald du Codeänderungen auf einem Branch in Bitbucket hast, kannst du eine Pull-Anfrage erstellen, um den Code reviewen zu lassen. Deine Teamkollegen kommentieren deinen Code mit Feedback und Fragen und genehmigen dann (hoffentlich) die Pull-Anfrage. Wenn du genug Genehmigungen erhalten hast, mergst du die Pull-Anfrage, um deinen Branch in den Hauptcode zu mergen.
Git-Repositorys erstellen
Du bist gerade an der Bitbucket-Raumstation angekommen und es ist Zeit für den Orientierungsprozess. Dazu gehört, Updates an deinem Willkommenspaket vorzunehmen und diese genehmigen zu lassen.
1. Klicke in der globalen Seitenleiste auf + und wähle unter Create (Erstellen) Repository aus.
2. Stelle sicher, dass das von dir erstellte Team der Repository-Besitzer ist.
3. Gib einen beliebigen Projektnamen und Repository-Namen ein. Wenn dir nichts einfällt, kannst du jeweils Willkommenspaket bzw. Erste Eindrücke verwenden.
4. Wähle unter Include a README? (README einschließen?) eine der Yes-Optionen (Ja).
5. Wähle unter Version control system (Versionskontrollsystem) eine Option für den Typ des Repositorys, das du erstellen möchtest. Wenn du dir unsicher bist, belasse alles so, wie es ist.
6. Klicke auf Create repository (Repository erstellen), um zur Source-Ansicht (Quelle) deines brandneuen Repositorys zu gelangen.
7. Wähle in Source (Quelle) die Option > Add file (Datei hinzufügen) aus.
8. Benenne die Datei survey.html
und füge anschließend diesen Code per Copy and Paste in den Haupttextbereich ein.
Lösung anzeigen
Git kennenlernen mit Bitbucket Cloud
Zugehöriges Material
So funktioniert Branching mit Bitbucket Cloud
\<\!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style media="screen" type="text/css">
body {
margin: auto;
width: 700px;
color: #FFFFFF;
font-family: Arial, sans-serif;
background-color: #172B4D;
}
body>h1 {
margin: 50px;
font-size: 50px;
text-align: center;
color: #0052CC;
}
</style>
</head>
<body>
<h1>Team up in space</h1>
<p>
Welcome to the team! You've made it this far so we know that you've got the potential to do great things. Because you're going to be collaborating with other awesome people, anything you add needs to be code reviewed and approved. That's just how a team works! You should have already created a branch and checked it out locally. If you haven't, go back to the tutorial and do that now. We'll be here.
</p>
<p>
Because you're on your own branch, you can go crazy. Spice up this file any way you like. Add more files to this repository if you see fit. If want to take it slow and are just here to learn about pull requests, you can use this opportunity to fill out our short questionaire.
</p>
<br>
<p>
<b>Question 1</b>: Have you used pull requests before?
</p>
<p>
<b>Answer 1</b>: **** Your answer here **** </p>
<p>
<b>Question 2</b>: Why do you want to learn about code review?
</p>
<p>
<b>Answer 2</b>: **** Your answer here **** </p>
<p>
<b>Question 3</b>: Who do you plan to work with on Bitbucket? </p>
<p>
<b>Answer 3</b>: **** Your answer here **** </p>
</body>
</html>
9. Klicke auf Commit (Committen) und im Dialogfeld noch einmal auf Commit (Committen).
Dein Repository sieht jetzt ziemlich gut aus. Schau es dir genauer an, wenn du Lust hast.
Branch klonen und Änderungen an einem neuen Branch vornehmen
Wenn du weißt, dass du Reviewer hinzufügen wirst, die deinen Code vor dem Mergen überprüfen und genehmigen sollen, wirst du wahrscheinlich das Repository bereits geklont haben, bevor du einen Branch erstellst. Diesen Schritt wirst du also zuerst ausführen, bevor du deinen eigenen Branch einrichtest.
Wenn du die Befehlszeile verwendest
Schritt 1: Klone dein Repository auf deinem lokalen System.
1. Klicke im Repository oben rechts auf die Schaltfläche Clone (Klonen).Bitbucket zeigt das Dialogfeld Clone this repository (Dieses Repository klonen) an. In diesem Dialogfeld ist, je nach deinen Einstellungen, als Protokoll standardmäßig HTTPS oder SSH festgelegt. Daher kannst du das festgelegte Standardprotokoll einfach übernehmen.
2. Kopiere den Klon-Befehl.
3. Wechsle von einem Terminalfenster in dein lokales Verzeichnis, um dein Repository zu klonen.
$ cd ~/<path_to_directory>
4. Füge den aus Bitbucket kopierten Befehl ein, wie zum Beispiel:
$ git clone https://breezy@bitbucket.org/powerstars/first-impressions.git
Cloning into 'first-impressions'...
Password for 'https://breezycloud@bitbucket.org':
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
Weitere Details findest du in unserem Video zum Klonen:
Schritt 2: Einen Branch erstellen und lokal pullen
Nachdem du dein Repository eingerichtet hast, kann der Spaß beginnen. Du kannst Branches lokal oder über Bitbucket erstellen. Legen wir für dieses Tutorial einen Branch über Bitbucket an.
1. Klicke in der linken Navigationsleiste auf Branches. Du wirst sehen, dass du bereits einen Branch hast – deinen Haupt-Branch (main
).
2. Klicke oben rechts auf Create a branch (Einen Branch erstellen).
3. Nachdem du einen Branch erstellt hast, musst du ihn auf deinem lokalen System auschecken. Bitbucket bietet dir einen fetch- und checkout-Befehl, den du kopieren und in deine Befehlszeile einfügen kannst. Das sieht ungefähr so aus:
$ git fetch && git checkout my-updates
Password for 'https://breezycloud@bitbucket.org':
From https://bitbucket.org/planetbreezycloud/first-impressions
* [new branch] my-updates -> origin/my-updates
Branch 'my-updates' set up to track remote branch 'my-updates' from 'origin'.
Switched to a new branch 'my-updates'
Wie du sehen kannst, hast du lokal zu deinem neuen Branch gewechselt. Jetzt kannst du die separate Codezeile bearbeiten und pushen.
Schritt 3: Änderungen an dem Branch vornehmen
Jetzt musst du ein paar Änderungen an deinem Repository vornehmen. Dabei sind deiner Kreativität keine Grenzen gesetzt. Ändere die CSS-Datei. Füge mehr Dateien hinzu. Schreibe eine Weltraumoper. Oder beantworte einfach die Fragen.
1. Öffne die survey.html
-Datei (oder wie auch immer du es genannt hast) mit einem Texteditor.
2. Nimm deine großen oder kleinen Änderungen vor und dann speichere und schließe die Datei.
3. In deinem Terminalfenster solltest du immer noch im Repository-Verzeichnis sein, sofern du nichts geändert hast. Lass dir mit git status
den Status deines Repositorys anzeigen. Du solltest die Datei survey.html
sehen, die du geändert hast. Falls du andere Dateien hinzugefügt oder geändert hast, werden dir diese ebenfalls angezeigt.
$ git status
On branch my-updates
Your branch is up-to-date with 'origin/my-updates'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: survey.html
no changes added to commit (use "git add" and/or "git commit -a")
4. Füge deine Änderungen mit git add
lokal hinzu:
$ git add survey.html
5. Committe deine Änderungen lokal mit git commit -m "deine Commit-Nachricht"
:
$ git commit -m "Answered questions"
[my-updates 7506040] Answered questions
1 file changed, 3 insertions(+), 3 deletions(-)
6. Gib git push origin
ein, um die Änderungen an deinem Branch auf Bitbucket zu pushen, und gib dein Passwort ein, um das Pushen von Änderungen abzuschließen.
$ git push origin my-updates
Password for 'https://breezycloud@bitbucket.org':
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 350 bytes | 350.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To https://bitbucket.org/planetbreezycloud/first-impressions.git
454ccaf..7506040 my-updates -> my-updates
Branch main set up to track remote branch main from origin.
7. Klicke in Bitbucket auf die Seite Source (Quelle) deines Repositorys. Du solltest beide Branches im Dropdown-Menü sehen können. Alle weiteren Commits, die du auf meine-Updates anwendest, werden ebenfalls in diesem Branch angezeigt.
Wenn du Sourcetree verwendest
Schritt 1: Klone dein Repository auf deinem lokalen System.
Bringen wir das Ganze auf dein lokales System, damit du richtig loslegen kannst.
1. Klicke in der globalen Seitenleiste deines Repositorys auf + und wähle unter Get to work (Mit der Arbeit beginnen) die Option Clone this repository (Dieses Repository klonen) aus.
2. Klicke auf die Schaltfläche Clone in Sourcetree (In Sourcetree klonen).
3. Aktualisiere im Fenster Clone New (Neue klonen) den Destination Path (Zielpfad) auf < path_to_repo_directory>/first-impressions/
.
4. Klicke auf die Schaltfläche Clone (Klonen).
Im Abschnitt unseres Videos zum Klonen eines Repositorys siehst du, wie's geht:
Schritt 2: Einen Branch erstellen und lokal pullen
Nachdem du dein Repository eingerichtet hast, kann der Spaß beginnen. Da sich das Konzept von Branches nicht nur auf Bitbucket beschränkt, kannst du auch lokal einen anlegen. Für dieses Tutorial erstellen wir jedoch einen Branch in Bitbucket.
1. Klicke in der linken Navigationsleiste auf Branches. Du wirst sehen, dass du bereits einen Branch, deinen Haupt-Branch, hast.
2. Klicke oben rechts auf Create a branch (Einen Branch erstellen).
3. Gib einen Branch-Namen ein und klicke auf "Create" (Erstellen). Wenn du unsicher bist, wie du deinen Branch benennen sollst, wähle etwas wie meine-Updates.
4. Nachdem du einen Branch erstellt hast, musst du ihn von deinem lokalen System auschecken. Klicke hierzu auf die Schaltfläche Check out in Sourcetree (In Sourcetree auschecken).
5. Klicke im Dialogfeld Checkout Existing (Vorhandene auschecken) in Sourcetree auf Checkout (Auschecken).
Jetzt hast du einen Branch in Bitbucket, der in dein lokales System ausgecheckt ist, sodass du die separate Codezeile bearbeiten und pushen kannst.
Schritt 3: Änderungen an dem Branch vornehmen
Jetzt musst du ein paar Änderungen an deinem Repository vornehmen. Dabei sind deiner Kreativität keine Grenzen gesetzt. Ändere die CSS-Datei. Füge mehr Dateien hinzu. Schreibe eine Weltraumoper. Oder beantworte einfach die Fragen.
1. Klicke im Repository in Sourcetree auf die Schaltfläche Show in Finder (In Suche anzeigen).
2. Öffne die survey.html
-Datei (oder wie auch immer du es genannt hast) mit einem Texteditor.
3. Nimm deine großen oder kleinen Änderungen vor und dann speichere und schließe die Datei.
4. Öffne Sourcetree. Du siehst nicht committete Änderungen in deinem Repository.
5. (Nur Git) Füge die Datei zum Staging-Bereich hinzu:
1. Wähle die Zeile Uncommitted changes (Nicht committete Änderungen) aus.
2. Setze in der Liste Unstaged files (Nicht gestagte Dateien) ein Häkchen neben der survey.html-Datei(und anderen Dateien mit nicht committeten Änderungen).
3. Klicke im Dialogfeld Confirm Stage? (Staging bestätigen?) auf OK.
6. Klicke oben auf die Schaltfläche Commit, um die Datei zu committen.
7. Gib eine Commit-Nachricht in das dafür vorgesehene Feld ein, z. B. Answered questions (Beantwortete Fragen).
8 Klicke unter dem Nachrichtenfeld auf die Schaltfläche Commit (Committen). Wenn du zurück zur Ansicht wechselst, wirst du sehen, dass die Datei committet, aber nicht ins Bitbucket-Repository gepusht wurde.
9. Klicke in Sourcetree auf die Schaltfläche Push (Pushen), um deine committeten Änderungen zu pushen.
10. Klicke im angezeigten Dialogfeld auf OK, um deinen Branch mit dem Commit zu Bitbucket zu verschieben.
11. Klicke in Bitbucket auf die Seite Source (Quelle) deines Repositorys. Du solltest beide Branches im Dropdown-Menü sehen können. Alle weiteren Commits, die du auf meine-Updates anwendest, werden ebenfalls in diesem Branch angezeigt.
Eine Pull-Anfrage erstellen, um deine Änderungen zu mergen
Um Reviewer zu Prüfung und Genehmigung deines Codes vor dem Mergen hinzuzufügen, musst du zunächst eine Pull-Anfrage erstellen. Eine Pull-Anfrage dient nicht nur zum Prüfen von Code, sondern zeigt auch deine Änderungen im Vergleich zum ursprünglichen Repository (auch "Diff" genannt) an und bietet eine einfache Möglichkeit für das Mergen von Code, wenn du dazu bereit bist.
Schritt 1: Die Pull-Anfrage erstellen
Zum Erstellen einer Pull-Anfrage brauchst du einen Branch. Gut, dass du schon einen hast.
1. Klicke in der allgemeinen Seitenleiste deines Repositorys auf +. Klicke dann unter Get to work (Mit der Arbeit beginnen) auf Create a pull request (Eine Pull-Anfrage erstellen).
Bitbucket zeigt das Anfrageformular an.
2. Fülle das Formular aus:
1. Du hast bereits einen automatischen Titel, deine letzte Commit-Nachricht.
2. Füge eine Beschreibung hinzu, wenn du möchtest.
(Optional – Hinzufügen eines Reviewers) Wenn du jemanden brauchst, der deinen Code vor dem Mergen überprüft und/oder genehmigt, fügst du ihn im Feld Reviewers (Reviewer) hinzu. Du kannst sehen, dass Breezy Cloud als Reviewer zu deiner Beispiel-Pull-Anfrage unten hinzugefügt wurde.
Um einer Pull-Anfrage einen Reviewer hinzuzufügen, musst du dem Benutzer zunächst Zugriff auf dein Repository gewähren, indem du ihn/sie einer Gruppe hinzufügst. Weitere Informationen und detaillierte Schritte findest du hier: Grant repository access to users and groups (Repository-Zugriff für Benutzer und Gruppen gewähren). Hinweis: Du kannst jederzeit die Pull-Anfrage erstellen und dann später Reviewer hinzufügen.
Wenn du fertig bist, sieht das Formular in etwa so aus:
3. Klicke auf Create pull request (Pull-Request erstellen).
Schritt 2: Deine Pull-Anfrage mergen
Doch immer mit der Ruhe! Vielleicht hast du oben schon die Schaltfläche Merge (Merge durchführen) gesehen. Du musst jedoch erst auf die Genehmigung deiner Änderungen warten, bevor du darauf klickst. Deine Teamkollegen erhalten eine E-Mail-Benachrichtigung und können die Pull-Anfrage jetzt auch im Dashboard Your work (Deine Arbeit) unter Pull requests to review (Zu prüfende Pull-Anfragen) sehen.
Reviewer können in der Pull-Anfrage den Diff ansehen und Kommentare hinzufügen, falls sie etwas besprechen möchten, bevor sie auf die Schaltfläche Approve (Genehmigen) klicken.
Wenn jemand deine Pull-Anfrage genehmigt, wirst du per E-Mail darüber benachrichtigt. Sobald du die erforderlichen Genehmigungen erhalten hast (in diesem Fall nur eine!) kannst du einen Merge durchführen. Klicke in der Pull-Anfrage auf Merge (Merge durchführen). Und das war's! Wenn du den Merge deines Branch in den Haupt-Branch sehen möchtest, kannst du durch Klicken auf Commits den Commit-Baum anzeigen.
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.