Kuten tiedät, paras käytäntö on aina käyttää lähdekoodinhallintaa (SCM) projekteissasi – myös henkilökohtaisissa projekteissa. Tiesitkö, että Android Studiossa on hämmästyttävä integraatio Gitin kanssa lähdekoodinhallintaa varten? Jos et tiennyt tai sinulla ei ole kokemusta sen käytöstä, jatka tämän viestin lukemista. Vaikka olisitkin jo käyttänyt Android Studion Git-integraatiota, saatat silti poimia joitakin hyödyllisiä niksejä tästä postauksesta.
Näytän sinulle Android Studion Git-tuen monet ominaisuudet ja myös sen, kuinka helppoa on tehdä erilaisia Git-operaatioita (commit, push, pull, branch jne.) Android Studion sisällä.
Tässä opetusohjelmassa käyn läpi luettelon SCM-ominaisuuksista, jotka ovat käytettävissä Android Studiossa. Tarkastelemme seuraavia osa-alueita:
- Uuden Android Studio -projektin integroiminen Gitiin
- Työskentely GitHubin tai Bitbucketin kanssa
- Versiohallintaikkunan tutkiminen
- commits
- branches
- pushing and pulling from a remote repository
.
- Prerequisites
- 1. Android Studio -projektin luominen
- 2. Gitin integrointi
- 3. Integrointi GitHubin tai Bitbucketin kanssa
- 4. Versiohallintaikkuna
- Paikalliset muutokset -välilehti
- Konsoli-välilehti
- Loki-välilehti
- 5. Commitin tekeminen
- Tiedoston tekemisen lokin tarkastelu
- 6. Tiedoston toimitusvalikko. Git-haaran luominen
- 7. Git-haarojen yhdistäminen
- Merge, Checkout, Delete, Compare, Rename Branch
- 8. Pushing to a Remote Repository
- 9. Paina push-painiketta. Pulling From a Remote Repository
- Johtopäätös
Prerequisites
To be able to follow this tutorial, tarvitset:
- perusymmärrys hajautetusta Git-versionhallintajärjestelmästä
- Android Studio 3.0 tai uudempi
1. Android Studio -projektin luominen
Sytytä Android Studio ja luo uusi projekti (voit nimetä sen GitApplicationDemo
), jossa on tyhjä aktiviteetti MainActivity
.
2. Gitin integrointi
Kun Android Studio -projekti on luotu, napsauta VCS-valikkoa, siirry Import into Version Control -valikon päälle ja valitse Create Git Repository…
Valitse sitten Android Studio -projektisi ylin vanhemman kansio.
Klikkaa OK-painiketta projektin alustamiseksi Gitillä. Android Studio suorittaa konepellin alla Git-komennon:
git init
Muistutuksena kerrotaan, mitä tämä komento tekee:
Tämä komento luo tyhjän Git-tietovaraston – periaatteessa
.git
-hakemiston, jossa on alihakemistojaobjects
,refs/heads
,refs/tags
ja mallitiedostoille. Lisäksi luodaan alustavaHEAD
-tiedosto, joka viittaa master-haaran HEAD-tiedostoon.
Tietoikkuna avautuu:
Tässä kerrotaan .idea-kansion sisällä olevasta tiedostosta nimeltä vcs.xml. Tämä kansio sisältää vain projektikohtaisia asetuksia. Huomaa, että tämä on kaikkien viimeisimpien IntelliJ IDEA -versioiden käyttämä tiedostomuoto.
Itse asiassa .idea/
:ssä olevien tiedostojen ei pitäisi päästä Git:iin, joten sinun pitäisi lisätä se .gitignore
:een.
Oletusarvoisesti siirrymme master-haaraan. Voit aina tarkastella projektisi nykyistä haaraa Android Studion oikeassa alakulmassa.
3. Integrointi GitHubin tai Bitbucketin kanssa
Voit helposti työskennellä minkä tahansa Android-lähdekoodivarastosi kanssa, joka on GitHub- tai Bitbucket-tilillä Android Studiossa. Näytän sinulle, miten se tehdään.
Navigoi Tiedosto > Uusi > projekti versionhallinnasta > GitHub.
(Jos haluat työskennellä Bitbucketin repon parissa, valitse sen sijaan Bitbucket. Jos haluat vain kloonata Git-repon internetistä paikalliseen koneeseesi, valitse Git-valikkovaihtoehto.)
Seuraavaksi syötä GitHub-tilisi tunnukset ja valitse Kirjaudu sisään.
Jos kirjautuminen onnistui, Clone Repository -ikkuna avautuu. Tämä valintaikkuna näyttää pudotusvalikon, joka sisältää luettelon GitHubin arkistoista, jotka omistat tällä hetkellä tai joiden parissa olet työskennellyt.
Klikkaa Clone (Kloonaa) kloonataksesi repon paikalliselle koneellesi jo valitun emohakemiston sisälle.
4. Versiohallintaikkuna
Kun olet onnistuneesti käynnistänyt Android Studio -projektimme Gitillä, Android Studio näyttää Versiohallinta-ikkunan. Napsauta Version Control -välilehteä (Android Studion vasemmassa alareunassa) ja tutkitaan, mitä meillä on siellä. Huomaa, että voit käyttää Alt-9:ää avataksesi tämän ikkunan nopeasti.
Tässä ikkunassa meillä on kolme eri välilehteä: Paikalliset muutokset, Konsoli ja Loki.
Paikalliset muutokset -välilehti
Tässä näkyy luettelo tiedostoista, joita on muutettu paikallisesti (omalla koneellasi) ja joita ei ole vielä siirretty arkistoon.
Katsotaanpa kohdetyökalurivejä, jotka ovat käytettävissä, kun olet Paikalliset muutokset -välilehdellä.
- Klikkaamalla tätä kuvaketta voit päivittää tiedostojesi tilan nykyisessä työpaikassa. Pikanäppäin on Control-F5.
- Tätä kuvaketta napsauttamalla voit sitoa nykyiset muutokset. Pikanäppäin on Control-Alt-Z.
- Klikkaamalla tätä kuvaketta voit peruuttaa kaikki valitut muutokset.
- Luo uusi muutosluettelo napsauttamalla tätä kuvaketta. Huomaa, että muutosluettelo on joukko tiedostojen muutoksia, jotka edustavat loogista muutosta lähdekoodissa. Pikanäppäin on Alt-Insert.
- Poista valittu muutosluettelo napsauttamalla tätä painiketta.
- Klikkaamalla tätä kuvaketta saat muutosluettelon aktiiviseksi.
- Klikkaa tätä kuvaketta siirtääksesi valitun tiedoston toiseen muutosluetteloon.
- Klikkaa tätä kuvaketta laajentaaksesi näkymään kaikki tiedostot.
- Klikkaamalla tätä kuvaketta voit sulkea kaikki tiedostot.
- Klikkaa tätä kuvaketta näyttääksesi muutetut tiedostot, jotka on ryhmitelty kansioittain.
- Klikkaa tätä kuvaketta kopioidaksesi valitun tiedoston polun järjestelmän leikepöydälle.
- Klikkaa tätä kuvaketta näyttääksesi sivuutetut tiedostot -solmun, jossa on luettelo olemassa olevista tiedostoista, jotka Git jättää huomiotta.
- Klikkaa tätä kuvaketta määrittääksesi luettelon tiedostoista, jotka Git jättää huomiotta.
- Klikkaa tätä kuvaketta avataksesi Preview Diff -ruudun, jossa voit verrata nykyistä tiedostoa viimeisimpään toimitettuun versioon.
Konsoli-välilehti
Tässä välilehdessä nähdään Gitiin liittyvien komentojen suorittamisen tulos. Huomaa, että et voi kirjoittaa Git-komentoja tämän välilehden sisällä – tee se sen sijaan Android Studion terminaali-ikkunassa.
Loki-välilehti
Tältä välilehdeltä näet kaikki muutokset, jotka on siirretty paikallisen ja etätietovaraston kaikkiin haaroihin. Tämän välilehden sisällä voit selata minkä tahansa haaran kommitointeja.
Hakukenttää käytetään sellaisten kommittien etsimiseen, joissa on syötetty merkkijono tai säännöllinen lauseke.
- Tätä pudotusvalikkoa, jota käytetään suodattamaan kommitteja haaran mukaan. Jos haluat tarkastella kaikkia paikallisia ja etäkommitointeja, valitse vain Kaikki (oletusasetus).
- Tämän pudotusvalikon avulla voit suodattaa komennukset tekijän mukaan. Sinun on kirjoitettava kirjoittajan nimi nähdäksesi hänen kommitointinsa. Valitse Kaikki, jos haluat tarkastella kaikkien käyttäjien tekemiä kommitointeja.
- Käytä tätä pudotusvalikkoa suodattaaksesi kommitointeja aikavälien tai tietyn päivämäärän mukaan. Jos haluat tarkentaa päivämäärän, valitse yksinkertaisesti Valitse ja valitse päivämäärä. Valitse Kaikki, jos haluat tarkastella kaikilla päivämäärillä tehtyjä kommitointeja.
- Käytä tätä pudotusvalikkoa suodattaaksesi kommitointeja muutettujen tiedostojen polun mukaan.
- Tämä painike (IntelliSort) mahdollistaa kätevämmän tavan tarkastella yhdistämisiä näyttämällä ensin saapuvat komitukset suoraan yhdistämissitoumuksen alapuolella.
- Jos tämä painike on käytössä, pitkät oksat näytetään kokonaisuudessaan, vaikka niissä ei olisikaan kommitteja.
- Käytä tätä painiketta päivittääksesi projektin kommittien luettelon.
- Käytät tätä painiketta siirtyäksesi hashiin, tagiin tai haaraan.
- Klikkaa tätä painiketta soveltaaksesi valitun toimituksen muutoksia nykyiseen haaraan.
- Klikkaa tätä painiketta korostaaksesi valitun haaran sitoumukset, joita ei ole vielä sovellettu nykyiseen haaraan.
Versiohallintatyökalun ikkunasta saat lisätietoja IntelliJ IDEA -dokumentaatiosta.
5. Commitin tekeminen
Huomaa, että kun asetimme Git-integraation Android Studio -projektiimme, tiedostonimemme väristä tuli ruskea. IntelliJ IDEA:n virallisen IntelliJ IDEA -dokumentaation mukaan ruskeilla merkinnöillä varustettujen tiedostojen osalta:
Tiedosto on olemassa paikallisesti, mutta se ei ole arkistossa, eikä sitä ole suunniteltu lisättäväksi.
Katsotaan nyt, kuinka tehdä commit Android Studiossa. Ensin meidän on kuitenkin lisättävä työhakemistossa olevat muutoksemme staging-alueelle. Konsolissa käyttäisimme komentoa git add
.
git add <file> || <directory>
Mutta voimme tehdä tämän suoraan Android Studiosta. Valitse Paikalliset muutokset -välilehden Unversioned Files -pudotusvalikko, napsauta hiiren kakkospainikkeella ja valitse Git > Add tai käytä Control-Alt-A. Muista, että juurikansioiden valitseminen lisää kaiken sen sisällä olevan staging-alueelle.
Nyt huomaat, että tiedostojen etikettien värit ovat muuttuneet ruskeasta vihreäksi. Seuraavassa kerrotaan, mitä IntelliJ IDEA -dokumentaatiossa sanotaan tiedostonimistä, joiden väri on vihreä:
Tiedosto on tarkoitus lisätä arkistoon.
Jos haluat lisätietoja siitä, millaisia eri värejä tiedostonimellä voi olla tiedoston tilan mukaan Android Studiossa (IntelliJ IDEA), tutustu tiedoston tilan korostukset -dokumentaatioon.
Kiinnittääksemme lopuksi muutoksemme, napsauta Paikalliset muutokset -välilehdellä olevaa commit changes -painiketta, jolloin Commit Changes -valintaikkuna avautuu.
- Tässä voimme valita tai poistaa valinnan tiedostoista, jotka pitäisi sisällyttää tähän toimitukseen. Oletusarvoisesti kaikki porrastetut tiedostot on valittuna.
- Kirjoita commit-viestisi tänne sisälle. Jos sinulla on aiemmin kirjoitettu commit-viesti, se näkyy tässä oletuksena.
- Valitse toiminto(t), joka(t) suoritetaan ennen Gitiin sitoutumista.
- Muutettujen tiedostojen vertailu vierekkäin.
- Tämän pudotusvalikon avulla voit joko sitouttaa ja työntää tai vain sitouttaa.
Tehdäksesi commit, kirjoitetaan commit-viesti:
Initial commit
Valitsemalla Commit-pudotusvalikosta Commit voit lopullisesti sitoa muutokset. Huomaa, että voit käyttää pikanäppäintä Control-K muutosten sitomiseen milloin tahansa Android Studiosta.
Jos nyt palaat Versiohallinta-ikkunan Paikalliset muutokset -välilehdelle, et näe enää yhtään tiedostoasi siellä listattuna – koska olemme onnistuneesti sitouttaneet ne paikalliseen repoomme.
Huomaa, että voit myös navigoida VCS > Git > Commit File… tehdäksesi commitin ja VCS > Git > Add lisätäksesi tiedoston stagingiin. Lisäksi voit napsauttaa Android Studion yläosan päätyökalurivin commit changes -kuvaketta tehdäksesi nopeasti commitin (tai commit and push).
Luokassamme MainActivity.kt tein yksinkertaisen muutoksen luokkaan ohittamalla onResume()
. Huomaat, että tiedostonimen väri muutoksen jälkeen on nyt sininen; tämä tarkoittaa, että olemme muuttaneet tiedostoa.
Tiedoston tekemisen lokin tarkastelu
Käy nyt uudelleen versionhallintaikkunassa ja siirry Loki-välilehdelle. Näet nyt tähän projektiin tehdyt commitit. Saat lisätietoja mistä tahansa toimituksesta napsauttamalla sitä.
- Tässä pääikkunassa näkyvät kaikki projektin commitit valitun suodattimen mukaan. Toisin sanoen tämä näyttää meille commit-historian.
- Tässä paneelissa näkyvät tiedostot ja kansiot, joihin commits history -ruutuun valittu commit vaikuttaa.
- Tämässä paneelissa näytetään lisätietoja valitusta sitoumuksesta.
Klikkaamalla toimitusta hiiren kakkospainikkeella näet myös valikon, jonka avulla voit kopioida versionumeron, luoda korjauksen, tarkistaa version, haarautua kyseisestä toimituksesta, luoda uuden tunnisteen ja palauttaa nykyisen haaran kyseiseen toimitukseen.
Katsotaan nyt, miten voimme tarkastella, mitä koodia on lisätty, muokattu tai poistettu. Toisin sanoen haluamme tarkistaa – yksityiskohtaisemmin – tehdyt muutokset.
Klikkaa yksinkertaisesti show diff -kuvaketta ikkunan yläpuolella, jossa näkyvät tiedostot, joihin sitoutuminen on vaikuttanut. Pikakuvake on käyttää Control-D:tä tai kaksoisnapsauttaa tiedostoa tai kansiota.
Näkyviin tulee Näytä diff -valintaikkuna, jossa näkyvät edellisen ja valitun commitin väliset erot.
Tiedostossa oleva vihreä värillinen alue korostaa tiedostoon lisättyjä rivejä – sinun pitäisi nähdä joitakin, jos seuraat mukana. Harmaat alueet korostavat poistettuja rivejä. Ja sininen korostaa muuttuneita rivejä. Yritä tutustua Show Diff -valintaikkunan yläosassa käytettävissä oleviin suodattimiin ja kuvakepainikkeisiin, jotta opit siitä lisää.
Huomaa, että voit nähdä myös kuviin tehdyt muutokset Show Diff -valintaikkunassa!
Klikkaamalla tiedostoa hiiren kakkospainikkeella, voit myös nähdä kyseisen tiedoston viimeisimmän ja tämänhetkisen toimituksen välisen eron-show diff (pikanäppäin Control-D). Voit myös muokata lähdettä (F4), avata version arkistossa, palauttaa valitut muutokset, näyttää version historian ja näyttää kyseisen tiedoston toimituksen yksityiskohdat.
6. Tiedoston toimitusvalikko. Git-haaran luominen
Master-haara on oletusarvoisesti nykyinen. On kuitenkin suositeltavaa haarautua aina master-haarasta ja tehdä työ erilliseen, ominaisuuskohtaiseen haaraan. Kun olet saanut ominaisuutesi koodauksen valmiiksi (ja kun olet testannut muutoksesi), yhdistät sitten muutoksesi master-haaraan.
Katsotaanpa, miten luodaan haara masterista.
Mene Android Studion oikeaan alakulmaan ja napsauta Git: master -pudotusvalikkoa.
Klikkaa Uusi haara -painiketta.
Syötä haaran nimi. Meidän tapauksessamme käytä dev.
Klikkaa lopuksi OK-painiketta, jotta Android Studio luo automaattisesti dev-haaran ja myös kirjautuu kyseiseen haaraan.
Olemme nyt tällä hetkellä dev-haarassa. Kuten alla näkyy:
Alhaalla Android Studio suorittaa komennon:
git checkout -b dev
Huomaa, että voimme myös luoda uuden haaran siirtymällä kohtaan VCS > Git > Branches > New Branch.
7. Git-haarojen yhdistäminen
Luo dev-haaraan vain perusaktiviteetti ProfileActivity.kt ja sen ulkoasutiedostot ja tee muutokset. Näemme, miten yhdistämme dev:n masteriin suoraan Android Studiossa.
Mene ja kirjaudu ulos nykyisestä haarasta (dev) master-haaraan (eli vaihdamme dev:stä masteriin).
Merge, Checkout, Delete, Compare, Rename Branch
Klikkaamalla haaraa, sinulle näytetään joitakin toimintoja, joita voit suorittaa kyseiselle haaralle. Näitä toimintoja ovat yhdistäminen, kahden haaran vertailu, haaran uudelleennimeäminen, uudelleenasettelu, tarkistaminen ja haaran poistaminen.
Katsomme tässä viestissä, miten haara yhdistetään. Yhdistä dev-haara master-haaraan navigoimalla dev-haaraan ja valitsemalla valikosta Merge.
Se on siinä! Olemme nyt onnistuneesti yhdistäneet dev-haaramme master-haaraan.
Kulisseissa Android Studio suorittaa komennon:
git merge dev
Huomaa, että voimme tehdä myös edistyneen yhdistämisen suoraan Android Studion sisällä. Pystymme määrittämään yhdistämisstrategian (Resolve, Recursive, Octopus, Ours tai Subtree) tai olemaan käyttämättä nopeaa yhdistämistilaa.
Tämä asetetaan yhdistämisen yhteydessä navigoimalla kohtaan VCS > Git > Merge Changes…
Tässä voit valita useita oksia yhdistettäväksi, valita yhdistämisstrategian ja kirjoittaa commit-viestin. On erittäin suositeltavaa, että todella ymmärrät nämä yhdistämisstrategiat ja sen, haluatko käyttää pikatilaa ennen yhdistämistä.
8. Pushing to a Remote Repository
Jokaiseen Git-projektiin pitäisi olla etä- tai keskusvarasto, jossa muut kehittäjät voivat tehdä yhteistyötä projektissa mistä päin maailmaa tahansa. Android Studiossa on myös mahdollista työntää toimituksemme tai muutoksemme etätietovarastoon. Voit tehdä sen siirtymällä kohtaan VCS > Git > Push…
Tässä voimme lisätä etätietovaraston URL-osoitteen napsauttamalla avautuvan Push Commits -valintaikkunan Define remote -linkkiä. Klikkaa lopuksi Push-painiketta, kun olet valmis! Pikanäppäin on Control-Shift-K.
Android Studio suorittaa kulissien takana seuraavan komennon:
git push
Voit myös nopeasti tehdä push-toimituksen klikkaamalla päätyökalurivin commit changes -kuvaketta tai käyttämällä Control-K.
9. Paina push-painiketta. Pulling From a Remote Repository
Päivittääksesi projektisi (tehdäksesi pullin) uusimmilla muutoksilla etätietovarastosta (sinun pitäisi olla jo lisännyt etäalkuperän), siirry kohtaan VCS > Git > Pull. Tämä päivittää Android Studio -projektisi automaattisesti uusimmalla koodilla etätietovarastosta.
Voit käynnistää vedon myös napsauttamalla päätyökalurivin Päivitä projekti -kuvaketta tai käyttämällä pikanäppäintä Control-T.
Tällöin Android Studio suorittaa kulissien takana Git pull
-komennon:
git pull
Huomaa, että jos kohtaat yhdistämisristiriidan vetämisen tai työntämisen aikana, Android Studio näyttää todella kätevän yhdistämisristiriita-valintaikkunan, joka auttaa sinua ratkaisemaan kyseisen ristiriidan.
Johtopäätös
Tässä opetusohjelmassa opit, kuinka helppoa on suorittaa erilaisia Git-operaatioita, joita saatat yleensä tehdä komentorivillä tai terminaalissa. Android Studion Git-työkalujen käyttäminen helpottaa ja tehostaa yhteistyötä Android-projekteissa muiden kehittäjien kanssa.
Jos haluat oppia lisää Android-koodauksesta, tutustu muihin kursseihimme ja opetusohjelmiimme täällä Envato Tuts+:ssa!
-
AndroidMaterial Design -dialogien näyttäminen Android-sovelluksessaChike Mgbemena
-
AndroidLuo Materiaalisen suunnittelun Tabbed Interface Android-sovelluksessaChike Mgbemena
-
AndroidRakenna musiikkisovellus Android-sovellusmallillaChike Mgbemena