Wie Sie wissen, ist es am besten, immer eine Versionskontrollverwaltung (SCM) für Ihre Projekte zu verwenden – auch für persönliche Projekte. Wussten Sie, dass Android Studio eine hervorragende Integration mit Git für die Quellcodeverwaltung bietet? Wenn Sie das nicht wussten oder noch keine Erfahrung damit haben, dann lesen Sie diesen Beitrag weiter. Selbst wenn Sie die Git-Integration von Android Studio bereits verwendet haben, werden Sie in diesem Beitrag vielleicht noch einige nützliche Tricks finden.
Ich zeige Ihnen die vielen Funktionen der Git-Unterstützung in Android Studio und auch, wie einfach es ist, die verschiedenen Git-Operationen (Commit, Push, Pull, Branch, etc.) von Android Studio aus durchzuführen.
In diesem Tutorial führe ich Sie durch die Liste der SCM-Funktionen, die in Android Studio verfügbar sind. Wir werden uns die folgenden Bereiche ansehen:
- Integration eines neuen Android Studio-Projekts mit Git
- Arbeiten mit GitHub oder Bitbucket
- Erkundung des Fensters Versionskontrolle
- Commits
- Verzweigungen
- Pushing und Pulling von einem Remote Repository
- Voraussetzungen
- 1. Erstellen Sie ein Android Studio Projekt
- 2. Git integrieren
- 3. Integration mit GitHub oder Bitbucket
- 4. Das Versionskontrollfenster
- Registerkarte „Lokale Änderungen“
- Die Registerkarte Konsole
- Registerkarte „Protokoll“
- 5. Commit durchführen
- Betrachten des Übergabeprotokolls
- 6. Erstellen eines Git-Zweiges
- 7. Git-Zweige zusammenführen
- Zusammenführen, Auschecken, Löschen, Vergleichen, Zweig umbenennen
- 8. Pushing zu einem entfernten Repository
- 9. Pull aus einem entfernten Repository
- Abschluss
Voraussetzungen
Um diesem Tutorial folgen zu können, benötigen Sie:
- ein grundlegendes Verständnis des verteilten Versionskontrollsystems Git
- Android Studio 3.0 oder höher
1. Erstellen Sie ein Android Studio Projekt
Starten Sie Android Studio und erstellen Sie ein neues Projekt (Sie können es GitApplicationDemo
nennen) mit einer leeren Aktivität namens MainActivity
.
2. Git integrieren
Nachdem Sie Ihr Android Studio Projekt eingerichtet haben, klicken Sie auf das VCS Menü, bewegen Sie den Mauszeiger auf das Menü In Versionskontrolle importieren und wählen Sie Git Repository erstellen…
Dann wählen Sie den obersten übergeordneten Ordner Ihres Android Studio Projekts aus.
Klicken Sie auf die Schaltfläche OK, um das Projekt mit Git zu initialisieren. Unter der Haube führt Android Studio den Git-Befehl aus:
git init
Zur Erinnerung, was dieser Befehl bewirkt:
Dieser Befehl erstellt ein leeres Git-Repository, d. h. ein
.git
-Verzeichnis mit Unterverzeichnissen fürobjects
,refs/heads
,refs/tags
und Vorlagendateien. Eine anfänglicheHEAD
Datei, die auf den HEAD des Masterzweigs verweist, wird ebenfalls erstellt.
Ein Informationsdialog wird angezeigt:
Dies informiert uns über eine Datei namens vcs.xml innerhalb des Ordners .idea. Dieser Ordner enthält nur projektspezifische Einstellungen. Beachten Sie, dass dies das Format ist, das von allen neueren IntelliJ IDEA-Versionen verwendet wird.
In der Regel sollten die Dateien in .idea/
nicht zu Git gelangen, daher sollten Sie sie zu .gitignore
hinzufügen.
Standardmäßig sind wir auf den Master-Zweig umgestellt. Sie können den aktuellen Zweig Ihres Projekts immer in der unteren rechten Ecke von Android Studio anzeigen.
3. Integration mit GitHub oder Bitbucket
Sie können ganz einfach an jedem Ihrer Android-Quellcode-Repositorys arbeiten, das sich in einem GitHub- oder Bitbucket-Konto in Android Studio befindet. Ich zeige Ihnen, wie Sie das machen können.
Navigieren Sie zu Datei > Neues > Projekt aus der Versionskontrolle > GitHub.
(Wenn Sie an einem Repo von Bitbucket arbeiten möchten, wählen Sie stattdessen Bitbucket. Wenn Sie nur ein Git Repo aus dem Internet auf Ihren lokalen Rechner klonen möchten, wählen Sie die Menüoption Git.)
Nächste geben Sie Ihre GitHub-Kontodaten ein und klicken Sie auf Anmelden.
Wenn die Anmeldung erfolgreich war, wird der Dialog „Repository klonen“ angezeigt. Dieser Dialog zeigt ein Dropdown-Menü mit einer Liste von Repositories auf GitHub an, die Sie derzeit besitzen oder an denen Sie gearbeitet haben.
Klicken Sie auf Clone, um das Repository auf Ihren lokalen Rechner im bereits ausgewählten übergeordneten Verzeichnis zu klonen.
4. Das Versionskontrollfenster
Nachdem wir unser Android Studio Projekt erfolgreich mit Git gestartet haben, zeigt Android Studio das Versionskontrollfenster an. Klicken Sie auf die Registerkarte Versionskontrolle (unten links in Android Studio) und schauen wir uns an, was wir dort haben. Beachten Sie, dass Sie Alt-9 verwenden können, um dieses Fenster schnell zu öffnen.
In diesem Fenster haben wir drei verschiedene Registerkarten: Lokale Änderungen, Konsole und Protokoll.
Registerkarte „Lokale Änderungen“
Dies zeigt die Liste der Dateien, die lokal (auf dem eigenen Rechner) geändert und noch nicht in das Repository übertragen wurden.
Werfen wir einen Blick auf die Symbolleisten, die verfügbar sind, wenn Sie sich auf der Registerkarte „Lokale Änderungen“ befinden.
- Klicken Sie auf dieses Symbol, um den Status Ihrer Dateien im aktuellen Arbeitsplatz zu aktualisieren. Die Tastenkombination ist Control-F5.
- Klicken Sie auf dieses Symbol, um Ihre aktuellen Änderungen zu bestätigen. Die Tastenkombination ist Strg-Alt-Z.
- Klicken Sie auf dieses Symbol, um alle ausgewählten Änderungen zurückzunehmen.
- Klicken Sie auf dieses Symbol, um eine neue Changelist zu erstellen. Beachten Sie, dass eine Änderungsliste eine Reihe von Änderungen in Dateien ist, die eine logische Änderung im Quellcode darstellen. Die Tastenkombination ist Alt-Einfügen.
- Klicken Sie auf diese Schaltfläche, um die ausgewählte Changelist zu löschen.
- Um eine Änderungsliste aktiv zu machen, klicken Sie einfach auf dieses Symbol.
- Um eine ausgewählte Datei in eine andere Änderungsliste zu verschieben, klicken Sie auf dieses Symbol.
- Klicken Sie auf dieses Symbol, um alle Dateien anzuzeigen.
- Klicken Sie auf dieses Symbol, um alle Dateien auszublenden.
- Klicken Sie auf dieses Symbol, um die geänderten Dateien anzuzeigen, die nach Ordnern gruppiert sind.
- Klicken Sie auf dieses Symbol, um den Pfad zur ausgewählten Datei in die Zwischenablage des Systems zu kopieren.
- Klicken Sie auf dieses Symbol, um den Knoten „Ignorierte Dateien“ mit der Liste der vorhandenen Dateien anzuzeigen, die von Git ignoriert werden.
- Klicken Sie auf dieses Symbol, um die Liste der Dateien einzurichten, die von Git ignoriert werden.
- Klicken Sie auf dieses Symbol, um das Vorschaudiff-Fenster zu öffnen, um die aktuelle Datei mit der letzten übertragenen Revision zu vergleichen.
Die Registerkarte Konsole
In dieser Registerkarte wird das Ergebnis der Ausführung von Git-bezogenen Befehlen angezeigt. Beachten Sie, dass Sie in dieser Registerkarte keine Git-Befehle schreiben können – tun Sie dies stattdessen im Terminalfenster von Android Studio.
Registerkarte „Protokoll“
In dieser Registerkarte werden alle Änderungen angezeigt, die in alle Zweige des lokalen und entfernten Repositorys übertragen wurden. In dieser Registerkarte können Sie die Übertragungen für jeden Zweig durchsuchen.
Das Suchfeld wird verwendet, um nach Commits zu suchen, die die eingegebene Zeichenfolge oder einen regulären Ausdruck enthalten.
- Dieses Dropdown-Feld wird verwendet, um Commits nach Zweig zu filtern. Um alle lokalen und entfernten Commits anzuzeigen, wählen Sie einfach „Alle“ (die Standardeinstellung).
- Um Commits nach dem Autor zu filtern, verwenden Sie diese Auswahlliste. Sie müssen den Namen des Autors eingeben, um seine Commits anzuzeigen. Wählen Sie Alle, um die Commits aller Benutzer anzuzeigen.
- Mit dieser Dropdown-Liste können Sie Commits nach einem Zeitbereich oder einem bestimmten Datum filtern. Um ein bestimmtes Datum auszuwählen, klicken Sie einfach auf Auswählen und wählen das Datum. Wählen Sie „Alle“, um Commits für alle Daten anzuzeigen.
- Mit dieser Dropdown-Liste können Sie Commits nach dem Pfad der geänderten Dateien filtern.
- Diese Schaltfläche (IntelliSort) ermöglicht eine bequemere Anzeige von Zusammenführungen, indem zuerst die eingehenden Commits direkt unter dem Merge-Commit angezeigt werden.
- Wenn diese Schaltfläche aktiviert ist, werden lange Zweige vollständig angezeigt, auch wenn es keine Commits darin gibt.
- Mit dieser Schaltfläche können Sie die Liste der Commits im Projekt aktualisieren.
- Um zu einem Hash, Tag oder Zweig zu gelangen, verwenden Sie einfach diese Schaltfläche.
- Klicken Sie auf diese Schaltfläche, um die Änderungen der ausgewählten Übertragung auf den aktuellen Zweig anzuwenden.
- Klicken Sie auf diese Schaltfläche, um die Commits des ausgewählten Zweigs zu markieren, die noch nicht auf den aktuellen Zweig angewendet wurden.
Sie können mehr über das Fenster des Versionskontrollwerkzeugs in der IntelliJ IDEA-Dokumentation erfahren.
5. Commit durchführen
Sie werden feststellen, dass die Farbe unseres Dateinamens braun geworden ist, als wir die Git-Integration mit unserem Android Studio-Projekt eingerichtet haben. Laut der offiziellen IntelliJ IDEA-Dokumentation gilt für Dateien mit braunen Bezeichnungen:
Die Datei existiert lokal, befindet sich aber nicht im Repository und ist nicht zum Hinzufügen vorgesehen.
Lassen Sie uns nun sehen, wie man eine Übergabe in Android Studio macht. Zuerst müssen wir jedoch unsere Änderungen im Arbeitsverzeichnis zum Staging-Bereich hinzufügen. In der Konsole würden wir den Befehl git add
verwenden.
git add <file> || <directory>
Aber wir können dies auch direkt in Android Studio tun. Wählen Sie das Dropdown-Menü „Nicht versionierte Dateien“ auf der Registerkarte „Lokale Änderungen“, klicken Sie mit der rechten Maustaste und gehen Sie zu Git > Hinzufügen oder verwenden Sie Strg-Alt-A. Denken Sie daran, dass durch die Auswahl des Stammordners alles, was sich darin befindet, dem Staging-Bereich hinzugefügt wird.
Nun werden Sie feststellen, dass sich die Farbe der Dateibeschriftung von braun zu grün geändert hat. Hier ist, was die IntelliJ IDEA Dokumentation über Dateinamen sagt, die grün gefärbt sind:
Die Datei ist zur Aufnahme in das Repository vorgesehen.
Um mehr über die verschiedenen Farben zu erfahren, die ein Dateiname je nach Dateistatus in Android Studio (IntelliJ IDEA) haben kann, lesen Sie die Dokumentation zu den Dateistatus-Highlights.
Um unsere Änderungen schließlich zu bestätigen, klicken Sie auf die Schaltfläche „Änderungen bestätigen“ auf der Registerkarte „Lokale Änderungen“, woraufhin sich der Dialog „Änderungen bestätigen“ öffnet.
- Hier können wir Dateien auswählen oder abwählen, die in diese Übertragung einbezogen werden sollen. Standardmäßig sind alle bereitgestellten Dateien markiert.
- Schreiben Sie hier Ihre Commit-Nachricht hinein. Wenn Sie bereits eine Commit-Nachricht geschrieben haben, wird diese hier als Standard angezeigt.
- Wählen Sie die Operation(en) aus, die vor der Übergabe an Git durchgeführt werden sollen.
- Seite-an-Seite-Vergleich der geänderten Dateien.
- Mit dieser Dropdown-Schaltfläche können Sie entweder Commit und Push oder nur Commit durchführen.
Um eine Übergabe vorzunehmen, schreiben wir eine Übergabemeldung:
Initial commit
Wählen Sie Übergeben in der Dropdown-Liste Übergeben, um Ihre Änderungen endgültig zu übergeben. Beachten Sie, dass Sie die Tastenkombination Control-K verwenden können, um Änderungen jederzeit von Android Studio aus zu übertragen.
Wenn Sie nun die Registerkarte „Lokale Änderungen“ im Versionskontrollfenster erneut aufrufen, werden Sie dort keine Ihrer Dateien mehr sehen, da wir sie erfolgreich in unser lokales Projektarchiv übertragen haben.
Beachten Sie, dass Sie auch zu VCS > Git > Commit File… navigieren können, um einen Commit durchzuführen und VCS > Git > Add, um eine Datei zum Staging hinzuzufügen. Außerdem können Sie auf das Symbol „Änderungen übertragen“ in der oberen Symbolleiste von Android Studio klicken, um eine schnelle Übertragung (oder Übertragung und Push) durchzuführen.
In unserer Klasse MainActivity.kt habe ich eine einfache Änderung an der Klasse vorgenommen, indem ich onResume()
überschrieben habe. Sie werden feststellen, dass die Farbe des Dateinamens nach der Änderung jetzt blau ist; das bedeutet, dass wir die Datei geändert haben.
Betrachten des Übergabeprotokolls
Schauen Sie sich jetzt noch einmal das Fenster Versionskontrolle an und gehen Sie auf die Registerkarte Protokoll. Sie sehen nun die Übertragungen, die an diesem Projekt vorgenommen wurden. Um weitere Details zu einem Commit zu erhalten, klicken Sie ihn einfach an.
- Dieser Hauptbereich zeigt alle Commits des Projekts entsprechend dem gewählten Filter. Mit anderen Worten, hier wird die Commit-Historie angezeigt.
- Dieser Bereich zeigt die Dateien und Ordner an, die von der im Commit-Verlaufsbereich ausgewählten Übertragung betroffen sind.
- Dieser Bereich zeigt weitere Details über die ausgewählte Übertragung an.
Wenn Sie mit der rechten Maustaste auf eine Übertragung klicken, wird ein Menü angezeigt, mit dem Sie die Revisionsnummer kopieren, einen Patch erstellen, eine Revision auschecken, von dieser Übertragung verzweigen, ein neues Tag erstellen und den aktuellen Zweig auf diese Übertragung zurücksetzen können.
Schauen wir uns nun an, wie wir sehen können, welcher Code hinzugefügt, bearbeitet oder entfernt wurde. Mit anderen Worten, wir wollen uns die vorgenommenen Änderungen im Detail ansehen.
Klicken Sie einfach auf das Symbol „Show Diff“ über dem Fenster, in dem die von der Übertragung betroffenen Dateien angezeigt werden. Eine Abkürzung ist die Verwendung von Control-D oder ein Doppelklick auf die Datei oder den Ordner.
Es erscheint ein Dialogfeld „Diff anzeigen“, das die Unterschiede zwischen der vorherigen Übertragung und der ausgewählten Übertragung anzeigt.
Ein grün gefärbter Bereich in der Datei hebt Zeilen hervor, die der Datei hinzugefügt wurden – Sie sollten einige davon sehen, wenn Sie mitverfolgen. Graue Bereiche markieren Zeilen, die entfernt wurden. Und blau markiert Zeilen, die geändert wurden. Probieren Sie die Filter und Symbolschaltflächen oben im Dialogfeld „Diff anzeigen“ aus, um mehr darüber zu erfahren.
Beachten Sie, dass Sie im Dialogfeld „Diff anzeigen“ auch Änderungen an Bildern sehen können!
Wenn Sie mit der rechten Maustaste auf eine Datei klicken, haben Sie auch die Möglichkeit, den Unterschied zwischen dem letzten Commit und dem aktuellen Commit dieser Datei zu sehen – Diff anzeigen (Tastenkombination Control-D). Sie können auch den Quellcode bearbeiten (F4), die Version im Repository öffnen, ausgewählte Änderungen rückgängig machen, die Historie der Revision anzeigen und die Details der Übertragung für diese Datei anzeigen.
6. Erstellen eines Git-Zweiges
Der Master-Zweig ist standardmäßig der aktuelle. Es wird jedoch empfohlen, immer vom Master-Zweig abzuzweigen und Ihre Arbeit in einem separaten, funktionsspezifischen Zweig zu erledigen. Wenn Sie mit der Programmierung Ihrer Funktion fertig sind (und wenn Sie Ihre Änderungen getestet haben), führen Sie Ihre Änderungen mit dem Master-Zweig zusammen.
Lassen Sie uns sehen, wie man einen Zweig vom Master erstellt.
Gehen Sie zur unteren rechten Ecke von Android Studio und klicken Sie auf das Dropdown-Menü Git: master.
Klicken Sie auf die Schaltfläche Neuer Zweig.
Geben Sie den Namen des Zweigs ein. In unserem Fall verwenden Sie dev.
Schließlich klicken Sie auf die Schaltfläche OK, damit Android Studio automatisch den Dev-Zweig erstellt und auch in diesen Zweig auscheckt.
Wir befinden uns nun im Dev-Zweig. Wie Sie unten sehen können:
Unter der Haube führt Android Studio den Befehl aus:
git checkout -b dev
Beachten Sie, dass wir auch einen neuen Zweig erstellen können, indem wir zu VCS > Git > Branches > New Branch navigieren.
7. Git-Zweige zusammenführen
Innerhalb des Dev-Zweiges erstellen Sie einfach eine Basisaktivität ProfileActivity.kt und seine Layoutdateien und übertragen Sie Ihre Änderungen. Wir werden sehen, wie man dev zu master direkt in Android Studio zusammenführt.
Gehen Sie und checken Sie vom aktuellen Zweig (dev) zum Master-Zweig aus (d.h. wir wechseln von dev zum Master).
Zusammenführen, Auschecken, Löschen, Vergleichen, Zweig umbenennen
Wenn Sie auf einen Zweig klicken, werden Ihnen einige Operationen angezeigt, die Sie mit diesem Zweig durchführen können. Zu den Operationen gehören das Zusammenführen, der Vergleich zweier Zweige, das Umbenennen des Zweiges, das Umbasieren, das Auschecken und das Löschen des Zweiges.
In diesem Beitrag werden wir uns ansehen, wie man einen Zweig zusammenführt. Im Masterzweig führen Sie den Entwicklungszweig zusammen, indem Sie zum Entwicklungszweig navigieren und im Menü auf Zusammenführen klicken.
Das war’s! Wir haben nun erfolgreich unseren Entwicklungszweig mit dem Masterzweig zusammengeführt.
Hinter den Kulissen führt Android Studio den Befehl aus:
git merge dev
Beachten Sie, dass wir auch direkt in Android Studio eine erweiterte Zusammenführung durchführen können. Wir können die Zusammenführungsstrategie (Resolve, Recursive, Octopus, Ours oder Subtree) festlegen oder den Modus zum schnellen Zusammenführen nicht verwenden.
Um dies beim Zusammenführen einzurichten, navigieren Sie zu VCS > Git > Änderungen zusammenführen…
Hier können Sie mehrere Zweige zum Zusammenführen auswählen, die Zusammenführungsstrategie auswählen und eine Übergabemeldung schreiben. Es wird dringend empfohlen, dass Sie diese Zusammenführungsstrategien wirklich verstehen und ob Sie den Schnellvorlaufmodus vor der Zusammenführung verwenden sollten.
8. Pushing zu einem entfernten Repository
Jedes Git-Projekt sollte ein entferntes oder zentrales Repository haben, in dem andere Entwickler von überall auf der Welt an dem Projekt mitarbeiten können. In Android Studio ist es auch möglich, unsere Commits oder Änderungen an ein entferntes Repository zu übertragen. Navigieren Sie dazu zu VCS > Git > Push…
Hier können wir die URL des entfernten Repositorys hinzufügen, indem wir auf den Link Define remote im Push Commits Dialog klicken, der sich öffnet. Klicken Sie abschließend auf die Schaltfläche „Push“, wenn Sie fertig sind! Eine Abkürzung ist die Verwendung von Control-Shift-K.
Android Studio führt im Hintergrund den folgenden Befehl aus:
git push
Sie können auch schnell eine Übergabe mit Push durchführen, indem Sie auf das Symbol Änderungen übergeben in der Hauptsymbolleiste klicken oder Strg-K verwenden.
9. Pull aus einem entfernten Repository
Um Ihr Projekt mit den neuesten Änderungen aus dem entfernten Repository zu aktualisieren (Sie sollten den entfernten Ursprung bereits hinzugefügt haben), navigieren Sie zu VCS > Git > Pull. Dadurch wird Ihr Android Studio-Projekt automatisch mit dem neuesten Code aus dem entfernten Repository aktualisiert.
Um einen Pull zu initiieren, können Sie auch auf das Symbol „Projekt aktualisieren“ in der Hauptsymbolleiste klicken oder die Tastenkombination Control-T verwenden.
Wenn Sie dies tun, führt Android Studio im Hintergrund den Git pull
-Befehl aus:
git pull
Beachten Sie, dass, wenn Sie beim Pulling oder Pushing auf einen Merge-Konflikt stoßen, Android Studio einen sehr praktischen Merge-Konflikt-Dialog anzeigt, der Ihnen hilft, diesen Konflikt zu lösen.
Abschluss
In diesem Tutorial haben Sie gelernt, wie einfach es ist, verschiedene Git-Operationen auszuführen, die Sie normalerweise auf der Kommandozeile oder im Terminal durchführen würden. Die Verwendung der Git-Tools von Android Studio macht es einfacher und effizienter, mit anderen Entwicklern an Android-Projekten zusammenzuarbeiten.
Um mehr über die Programmierung von Android zu erfahren, sehen Sie sich einige unserer anderen Kurse und Tutorials hier auf Envato Tuts+ an!
-
AndroidMaterial-Design-Dialoge in einer Android-App anzeigenChike Mgbemena
-
AndroidErstellen einer Material Design Tabbed Interface in einer Android AppChike Mgbemena
-
AndroidErstelle eine Musik App mit einer Android App VorlageChike Mgbemena