Skip to content
Snippets Groups Projects
Commit 1a1d6ce5 authored by Vilho Kivihalme's avatar Vilho Kivihalme
Browse files

images

parent 1463dfc4
No related branches found
No related tags found
No related merge requests found
## Perustoiminnot
Ohjelmistoprojekti on luultavasti jossakin hakemistossa. Gitin peruskäyttö menee niin, että hakemisto avataan komentotulkilla ja annetaan komento `git init`, jonka tuloste näyttää tältä:
```
$ git init
Initialized empty Git repository in /home/v/vilkiv/koodi/.git/
```
Tämä alustaa (initialize) uuden tietovaraston eli *repon*. Git alkaa siis seurata tämän nykyisen hakemiston sisältöä. Nyt hakemistoon voisi lisätä koodia, esimerkiksi javatiedoston nimeltä `Esimerkki.java`
Tämän jälkeen tapahtuneet muutokset voi selvittää komennolla `git status`
```
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
Esimerkki.java
```
Git kertoo seuraavaa (ylhäältä alas)
* Ollaan haarassa nimeltä master (päähaara)
* Ei _committeja_ eli ei olla viel tehty mitään
* Untracked files: on olemassa uusia tiedostoja, joiden muutoksia ei vielä seurata.
Kuten ohjekin kertoo, nyt voitaisiin lisätä nämä tiedostot siten että git voi seurata niitä.
Annetaan komento `git add Esimerkki.java`. Tämä lisää tiedoston vasta eräänlaiselle *odotusalueelle* (engl. staging area). Nyt voitaisiin vielä lisätä muita tiedostoja, jos sellaisia olisi. Toki on hyvä muistaa, että kaikki tiedostot voi lisätä komennolla `git add .` eli lisätään kaikki nykyisen hakemiston muutokset. Myös `git add --all` toimii.
Git ei tulosta mitään. Kysytään status uudelleen:
```
$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: Esimerkki.java
```
Tässä näkyy muuten samat tiedot kuin edellä, mutta nyt listauksena onkin *Changes to be committed* eli muutokset, jotka voitaisiin tallentaa. Tallennetaan nämä muutokset ja samalla kirjataan viesti siitä, mitä juuri tehtiin.
`git commit -m "initial commit"``
Tässä siis:
* Määritellään toiminnoksi commit, eli "sitoudutaan" muutoksiin
* `-m` määrittää, että seuraava parametri on viesti (message)
* Kirjotetaan viestiksi jotain. Tyypillisesti ensimmäinen commit annetaan vain nimellä "initial commit". Suomeakin saa toki käyttää jos haluaa.
Oikeastaan tähän mennessä opitulla pääsee jo pitkälle ihan yksinkertaisissa pikkuprojekteissa:
* Koodaa jotain
* Tee `git add --all`
* Tee `git commit -m "muutin sitä ja tätä"``
Tutustutaan seuraavaksi muihin oleellisiin ominaisuuksiin. Ohjeet löytyvät hakemistosta `ohjeet`..
......@@ -136,10 +136,9 @@ Nyt komento
kertoo tiedoston muuttuneen:
<img src="kuvat/git2.png" alt="">
KUVA
Komennolla
......@@ -160,12 +159,17 @@ Kokeillaan vielä nimetä tiedosto uudestaan. Vaihdetaan tiedoston nimeksi `Vies
`$ git status`
<img src="kuvat/muutos1.png" alt="">
Koska Git ei ymmärrä vaihtunutta tiedoston nimeä, se näyttää kaksi muutosta. Muutos pitää viedä repositorioon siis joko lisäämällä molemmat tiedostot erikseen
`$ git add Esimerkki.java`
`$ git add ViestiKertaa10.java`
Tai lisäämällä kaikki muuttuneet tiedostot kirjoittamalla
`$ git add --all`
......@@ -176,6 +180,8 @@ Status osaa kertoa tiedoston nimen muuttuneen:
`$ git status`
<img src="kuvat/rename.png" alt="">
Tehdään taas commit:
`$ git commit -m "Nimettiin tiedosto uudelleen"`
......
kuvat/git1.png

25.8 KiB

kuvat/git2.png

13.4 KiB

kuvat/muutos1.png

12.2 KiB

kuvat/rename.png

6.68 KiB

......@@ -52,6 +52,8 @@ Git mahdollistaa myös kehitystyön haarauttamisen (engl. branch). Koodaaja voi
Kun projektia hallinnoidaan gitin avulla, tieto voi olla useassa eri paikassa ja tilassa.
<img src="kuvat/git1.png" alt="">
### Työhakemisto
Ohjelmoija tekee muutokset projektiinsa, siihen hakemistoon jossa hän työskentelee, eli työhakemistoon. Tämä on siis se hakemisto, jossa tiedostoja säilytetään ja niitä voi halutessaan käydä klikkailemalla hiirellä tuttuun tapaan, tai muokata kehitysympäristön tai editorin avulla.
......@@ -73,5 +75,5 @@ Git ei siis tallenna jokaista mahdollista muutosta, vaan ainoastaan ne joille k
Git toimii parhaiten, kun se on liitettynä verkkoon. Gitissä voi säilyttää lähdekoodia niin, että se on aina kaikkien luvan saaneiden käyttäjien saatavilla. Näin voit kätevästi säilyttää koodia ja sen kaikkea historiaa niin, että pääset siihen käsiksi mistä tahansa. Lisäksi useat henkilöt voivat työskennellä saman projektin kanssa, sillä eri käyttäjien tekemien muutosten seuranta ja yhdistäminen projektiin onnistuu kätevästi gitin avulla
Nyt on aika asentaa git ja varmistaa, että unix-komentorivi on tuttu. Siirrytään siis seuraavaan osioon: [asennus.md](https://gitlab.utu.fi/TKO_2116/viikko-2/-/blob/main/asennus.md)
Nyt on aika asentaa git ja varmistaa, että unix-komentorivi on tuttu. Siirrytään siis seuraavaan osioon:
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment