Som du vet, er det beste å alltid bruke kildekontrollstyring (SCM) for dine prosjekter - selv personlige prosjekter. Vet du at Android Studio har en fantastisk integrasjon med Git for styring av kildekontroll? Hvis du ikke visste eller ikke har erfaring med å bruke den, fortsett å lese dette innlegget. Selv om du allerede har brukt Android Studio Git-integrasjon, kan du likevel hente noen nyttige triks i dette innlegget.
Jeg vil vise deg de mange funksjonene i Git-støtte i Android Studio, og også hvor lett det er å gjøre de forskjellige Git-operasjonene (commit, push, pull, gren, etc.) fra inne i Android Studio.
I denne veiledningen vil jeg gå gjennom listen over SCM-funksjoner som er tilgjengelige i Android Studio. Vi ser på følgende områder:
For å kunne følge denne opplæringen må du:
Brann opp Android Studio og opprett et nytt prosjekt (du kan nevne det GitApplicationDemo
) med en tom aktivitet som heter Hoved aktivitet
.
Når Android Studio-prosjektet ditt er konfigurert, klikker du på VCS meny, sving på Importer til Versjonskontroll menyen, og velg Lag Git Repository ...
Deretter velger du den øverste overordnede mappen i Android Studio-prosjektet.
Klikk på OK knappen for å initialisere prosjektet med Git. Under hetten utfører Android Studio Git-kommandoen:
git init
Som en påminnelse, her er hva denne kommandoen vil gjøre:
Denne kommandoen oppretter et tomt Git-repository-i utgangspunktet a.git
katalog med underkataloger forobjekter
,Refs / hoder
,Refs / tags
, og malfiler. En innledendeHODE
fil som refererer til HOVEDEN i hovedgrenen, er også opprettet.
En informasjonsdialog vil dukke opp:
Dette forteller oss om en fil som heter vcs.xml inne i .idé mappe. Denne mappen inneholder bare prosjektspesifikke innstillinger. Merk at dette er formatet som brukes av alle nyere IntelliJ IDEA versjoner.
Ideelt sett, filene i .idé/
bør ikke nå Git-så du bør legge den til .gitignore
.
Som standard byttes vi til hovedgrenen. Du kan alltid se prosjektets nåværende gren i nederste høyre hjørne av Android Studio.
Du kan enkelt jobbe med et av Android-kildekodeoppbevaringsstedet ditt som er i en GitHub- eller Bitbucket-konto i Android Studio. La meg vise deg hvordan du gjør det.
Navigere til Fil> Nytt> Prosjekt fra Versjonskontroll> GitHub.
(Hvis du vil jobbe på en repo fra Bitbucket, velger du Bitbucket i stedet. Hvis du bare vil klone en Git repo fra internett til din lokale maskin, velger du Git menyalternativ.)
Deretter skriver du inn GitHub-kontoens legitimasjon og klikker Logg Inn.
Hvis påloggingen ble vellykket, ble Klonregister dialogen vil dukke opp. Denne dialogboksen viser en rullegardinmeny som inneholder en liste over repositorier på GitHub du eier eller har jobbet med.
Klikk Clone å klone repoen til din lokale maskin i den allerede valgte overordnede katalogen.
Etter å ha startet vårt Android Studio-prosjekt med Git, vil Android Studio vise Versjonskontroll vindu. Klikk på Versjonskontroll fanen (nederst til venstre i Android Studio), og la oss utforske hva vi har der. Merk at du kan bruke Alt-9 Å åpne dette vinduet raskt.
I dette vinduet har vi tre forskjellige faner: Lokale endringer, Console, og Logg.
Dette viser listen over filer som er endret lokalt (på egen maskin) og ennå ikke forpliktet til depotet.
La oss se på verktøylinjene som er tilgjengelige når du er i Lokale endringer tab.
I denne fanen ser vi resultatet av å utføre Git-relaterte kommandoer. Merk at du ikke kan skrive Git-kommandoer inne i denne kategorien - gjør det i terminalvinduet i Android Studio i stedet.
Denne kategorien viser alle endringene som ble forpliktet til alle grener av lokalt og eksternt lager. Innenfor denne kategorien kan du bla gjennom forpliktelser til enhver gren.
Søkeboksen brukes til å søke etter forpliktelser som har den angitte strengen eller et vanlig uttrykk.
Du kan lære mer om Versjonskontroll verktøyvinduet i IntelliJ IDEA-dokumentasjonen.
Du vil legge merke til at når vi satt opp Git-integrasjonen med vårt Android Studio-prosjekt, ble filnavnet farget brunt. Ifølge den offisielle IntelliJ IDEA dokumentasjonen, for filer med brune etiketter:
Filen eksisterer lokalt, men er ikke i depotet, og er ikke planlagt for å legge til.
La oss nå se hvordan du gjør en forpliktelse i Android Studio. Men først må vi legge til våre endringer i arbeidskatalogen til staging-området. I konsollen ville vi bruke git add
kommando.
git add||
Men vi kan gjøre dette rett fra Android Studio. Velg Unversioned Files drop-down i Lokale endringer tab, Høyreklikk og gå til Git> Legg til eller bruk Kontroll-Alt-A. Husk at valg av rotmappe vil legge til alt inni det til staging-området.
Nå vil du observere at filetikettfargene dine har endret seg fra brun til grønn. Her er hva IntelliJ IDEA-dokumentasjonen sier om filnavn som er farget grønt:
Filen er planlagt for tillegg til depotet.
Hvis du vil vite mer om de forskjellige fargene et filnavn kan ha, avhengig av filstatusen i Android Studio (IntelliJ IDEA), kan du se dokumentstatus dokumentasjonen.
For å endelig forplikte våre endringer, klikk på knappen for å forandre endringer i Lokale endringer fanen og Forplikta endringer dialogen vil dukke opp.
Så for å gjøre en forpliktelse, la oss skrive en forpliktelsesmelding:
Initial commit
Å velge Begå i Begå rullegardin for å endelig forplikte endringene dine. Merk at du kan bruke snarveien Kontroll-K å forplikte seg når som helst fra Android Studio.
Hvis du nå besøker Lokale endringer fanen i Versjonskontroll vindu, vil du ikke se noen av filene dine oppført der lenger - fordi vi med hell har forpliktet dem til vår lokale repo.
Legg merke til at du også kan navigere til VCS> Git> Commit File ... å gjøre en forpliktelse og VCS> Git> Legg til å legge til en fil for staging. I tillegg kan du klikke på commit-endringsikonet i hovedverktøylinjen i Android Studio for å gjøre et raskt forpliktelse (eller forplikte og presse).
I vår MainActivity.kt klasse, gjorde jeg en enkel modifikasjon i klassen ved tvingende onResume ()
. Du vil legge merke til at filnavnet farge etter endringen er nå blått; Dette betyr at vi har endret filen.
Nå, besøk Versjonskontroll vindu igjen og gå til Logg fane. Det du vil se nå er de forpliktelsene som er gjort for dette prosjektet. For å få mer informasjon om noen forpliktelser, bare klikk på den.
Ved å høyreklikke på en forpliktelse, kan du også se en meny som lar deg kopiere revisjonsnummeret, lage en oppdatering, sjekke ut en revisjon, gren fra det forpliktelsen, lage en ny kode og tilbakestille gjeldende gren til det forpliktelsen.
La oss se på hvordan vi kan se hvilken kode som ble lagt til, redigert eller fjernet. Med andre ord, vi ønsker å sjekke ut - mer detaljert - endringene gjort.
Bare klikk på show diff ikonet over vinduet der filene påvirket av commit er vist. En snarvei er å bruke Kontroll-D eller å dobbeltklikke på filen eller mappen.
Det du ser er en Vis Diff dialog, som viser forskjellene mellom forrige commit og det valgte commit.
Et grønt område i filen fremhever linjer som ble lagt til fil-du bør se noen om du følger med. Grå regioner markerer linjer som ble fjernet. Og blå fremhever linjer som ble endret. Prøv å utforske filtre og ikonknappene som er tilgjengelige øverst på siden Vis Diff dialog for å lære mer om det.
Merk at du også kan se endringer i bilder i Vis Diff dialog!
Ved å høyreklikke på en fil, har du også muligheten til å se forskjellen mellom den siste forplikten og gjeldende forpliktelse for den fil-show diff (snarvei Kontroll-D). Du kan også redigere kilden (F4), åpne versjonen i depotet, returner valgte endringer, vis historikk for revisjonen, og vis detaljer om commit for den filen.
Mestergrenen vil være gjeldende som standard. Imidlertid anbefales det å alltid forgrene seg fra mesteren og gjøre arbeidet ditt på en egen, spesialavhengig gren. Når du er ferdig med å kode funksjonen din (og når du har testet endringene dine), smelter du deretter endringene til hovedgrenen.
La oss se hvordan du lager en gren fra mesteren.
Gå til nederste høyre hjørne av Android Studio og klikk på Git: master nedtrekksmenyen.
Klikk på Ny gren knapp.
Skriv inn grennavnet. I vårt tilfelle, bruk dev.
Til slutt klikker du på OK knappen for Android Studio for å automatisk opprette devgren og også kassa til den grenen.
Vi er nå i dag devgren. Som du kan se nedenfor:
Under hetten utfører Android Studio kommandoen:
git checkout-b dev
Legg merke til at vi også kan opprette en ny filial ved å navigere til VCS> Git> Grener> Ny gren.
Inne i dev gren, bare opprett en grunnleggende aktivitet ProfileActivity.kt og dens layoutfiler og forplikte dine endringer. Vi skal se hvordan vi kan fusjonere devå mestre rett inne i Android Studio.
Gå og sjekk ut fra den nåværende grenen (dev) til master-grenen (som betyr at vi bytter fra devtil mesteren).
Hvis du klikker på en avdeling, blir du vist noen operasjoner du kan utføre på den grenen. Operasjonene omfatter sammenslåing, sammenligning av to grener, omdøping av grenen, gjenoppretting, sjekking og sletting av grenen.
Vi skal se på hvordan man kan slå sammen en filial i dette innlegget. I hovedgrenen flettes dev gren i ved å navigere til dev gren og klikk Slå sammen i menyen.
Det er det! Vi har nå fusjonert vår dev-filial til master-grenen.
Bak kulissene utfører Android Studio kommandoen:
git merge dev
Legg merke til at vi også kan gjøre avansert fusjon rett innenfor Android Studio. Vi kan spesifisere sammenslåingsstrategien (Løs, rekursiv, blekksprut, Ours eller Subtree) eller ikke å bruke hurtigspolingsmodusen.
For å sette opp dette ved sammenslåing, naviger til VCS> Git> Merge Changes ...
Her kan du velge flere grener for å slå sammen, velge fusjonsstrategi og skrive en commit-melding. Det anbefales på det sterkeste at du virkelig forstår disse sammenslåingsstrategiene, og om du skal bruke hurtigspolingsmodusen før du slår sammen.
Hvert Git-prosjekt skal ha et eksternt eller sentralt lagringssted der andre utviklere kan samarbeide på prosjektet fra hvor som helst i verden. I Android Studio er det også mulig å presse våre forpliktelser eller endringer i et eksternt lager. For å gjøre det, naviger til VCS> Git> Push ...
Her kan vi legge til nettadressen til ekstern depot ved å klikke på Definer fjernkontroll lenke i Push Commits dialog som dukker opp. Til slutt klikker du på Trykk knappen når du er ferdig! En snarvei er å bruke Kontroll-Skift-K.
Android Studio kjører følgende kommando bak kulissene:
git push
Du kan også raskt gjøre en forpliktelse med et trykk ved å klikke på commit-endringsikonet i hovedverktøylinjen eller ved hjelp av Kontroll-K.
For å oppdatere prosjektet (for å trekke) med de siste endringene fra fjernregisteret (du burde allerede ha lagt til den eksterne opprinnelsen), naviger til VCS> Git> Trekk. Dette oppdaterer automatisk ditt Android Studio-prosjekt med den nyeste koden fra fjernregisteret.
For å starte en trekk, kan du også klikke på oppdateringsprosjektikonet i hovedverktøylinjen eller bruke Kontroll-T snarvei.
Hvis du gjør dette, vil Android Studio utføre Git dra
kommandoen bak kulissene:
git pull
Vær oppmerksom på at hvis du møter en sammenføyningskonflikt mens du drar eller skyver, viser Android Studio en veldig praktisk flette konfliktdialog som hjelper deg med å løse den konflikten.
I denne opplæringen lærte du hvor lett det er å utføre forskjellige Git-operasjoner du vanligvis gjør på kommandolinjen eller i terminalen. Bruke Android Studios Git-verktøy gjør det enklere og mer effektivt å samarbeide på Android-prosjekter med andre utviklere.
For å lære mer om koding for Android, sjekk ut noen av våre andre kurs og opplæringsprogrammer her på Envato Tuts+!