summaryrefslogtreecommitdiff
path: root/1.md
diff options
context:
space:
mode:
Diffstat (limited to '1.md')
-rw-r--r--1.md171
1 files changed, 171 insertions, 0 deletions
diff --git a/1.md b/1.md
new file mode 100644
index 0000000..175dd76
--- /dev/null
+++ b/1.md
@@ -0,0 +1,171 @@
+---
+title: GIT — EITB 2022
+subtitle: Sarrera eta erabilera basikoa
+license: CC-BY-SA 4.0
+author: Ekaitz Zarraga
+links-as-notes: true
+lang: basque
+polyglossia-lang:
+ name: basque
+how-to: pandoc -f markdown+smart -t beamer % -o pdf/1.pdf --pdf-engine=xelatex --template=./template.tex
+...
+
+# Sarrera: Bertsio kontrol sistemak
+
+## Lizentzia
+
+- CC-BY-SA 4.0
+- Dokumentu honen edukiak eta irudiak [**Pro Git (Scott Chacon, Ben
+ Straub)**](https://git-scm.com/book/en/v2) liburutik atera dira.
+
+## Bertsio kontrolerako sistemak
+
+`Document_v3_FINAL.pdf`
+
+---
+
+![Bertsio kontrol sistema zentralizatuak](img/zentralizatuak.png){ height=180px }
+
+---
+
+![Bertsio kontrol sistema banatuak](img/banatuak.png){ height=300px }
+
+
+# GIT: Hasiera
+
+## Kontestua
+
+- 2005-ean argitaratu zen
+- Linux garapenerako garatu zen
+ - Milioika garatzaile
+ - *Codebase* handiak kudeatzeko
+- Sistema banatua (*distributed*) da
+- *Snapshot*etan oinarrituta
+- Operazio gehienak lokalak dira eta normalean ez ditu datuak ezabatzen
+- Integridade kontrola egiten du SHA-1 erabiliz
+- Hiru egoera:
+ `FITXATEGIA — STAGING AREA — REPOSITORIOA`
+
+## Instalazioa
+
+Debian oinarritutako distribuzioetan:
+
+```
+apt-get install git
+```
+
+Beste distribuzioetan antzeko komandoren batekin egin daiteke.
+
+
+## Konfigurazio sistema
+
+- Sistema mailakoa: `/etc/gitconfig`
+- Konfigurazio generala: `~/.config/git/config` edo `~/.gitconfig`
+- Konfigurazio lokala. Repositorio bakoitzeko: `$REPOSITORIOA/.git/config`
+
+Kaskada moduan dabil, konfigurazio lokalak generala zapaltzen du.
+Nondik datorren ikusteko:
+
+```
+git config --list --show-origin
+```
+
+## Konfigurazioa kudeatzea
+
+Komandoek konfigurazio fitxategia irakurri edo idazten dute. Eskuz egin
+daiteke.
+
+Komando orokorra:
+
+```
+git config [--global] atala.klabea [balioa]
+```
+
+- `balioa` gehitzen ez bada konfigurazioa irakurtzen da idatzi beharrean.
+- `--global` konfigurazio globala kudeatzeko erabiltzen da.
+
+Benetan konplexuagoa da, laguntza begiratu.
+
+
+## Hasierako konfigurazioa
+
+Identitatea definitu. Beharrezkoa da commiten egilea nor den jakiteko.
+
+```
+git config --global user.name "John Doe"
+git config --global user.email johndoe@example.com
+```
+
+Editorea aukeratzeko.
+
+```
+git config --global core.editor vim
+```
+
+
+
+## Laguntza lortzeko
+
+- `git help`
+- `man`
+
+
+# GIT: Basikoa
+
+## Repositorio bat lortzen
+
+Bi aukera:
+
+- Repositorio berri bat hasi: `git init`. Oraingo direktorioan `.git`
+ direktorioa eratuko du, bertan Git-en datuak gordeko dira.
+
+- Repositorio bat klonatu: `git clone <URL>`. Oraingo direktorioan emandako
+ repositorioa kopiatuko du, bere `.git` direktorioa barne. Protokolo
+ ezberdinetan egin daiteke komunikazioa.
+
+## Fitxategien egoerak
+
+![Fitxategien egoera ezberdinak](img/lifecycle.png){ height=180px }
+
+## Repositorioaren egoera ikusteko
+
+- `git status`
+- Fitxategi batzuei jaramonik ez egiteko: `.gitignore` fitxategi bat gehitu.
+ *Glob pattern*ak erabiltzen ditu.
+
+## Egoeraz aldatzeko
+
+- Fitxategi berriak gehitzeko: `git add`
+- Aldaketak *staging area*ra bidaltzeko: `git add`
+
+## Aldaketak ikusteko
+
+- `git diff`
+- `git diff --cached|--staged`
+- `git difftool` (konfiguratuta badago)
+
+## Aldaketak idazteko
+
+- `git commit`
+
+Mezu bat idaztea eskatzen du: `$EDITOR` edo `git config --global core.editor`
+programa exekutatuz.
+
+## Fitxategiak ezabatzeko
+
+- `git rm`
+- `git rm --cached`
+
+## Izenak aldatzeko
+
+- `git mv`
+
+Edo bestela fitxategia eskuz lekuz aldatu eta gero `git rm` + `git add` egin.
+
+
+
+## Commit historia ikusteko — I
+
+- `git log`
+
+Oso komando komplexua da, eta aukera asko ditu.