diff options
author | Ekaitz Zarraga <ekaitz@elenq.tech> | 2022-05-30 21:36:32 +0200 |
---|---|---|
committer | Ekaitz Zarraga <ekaitz@elenq.tech> | 2022-05-30 21:36:32 +0200 |
commit | 81c19a90af8fcf770ff796e922f711713ed534fd (patch) | |
tree | addd43887ab7b369c7dab97ae0bb56a010156ef1 /2.md | |
parent | f7b306608b57f1de880ae9d968c95bce099906ed (diff) |
resets ftw
Diffstat (limited to '2.md')
-rw-r--r-- | 2.md | 75 |
1 files changed, 75 insertions, 0 deletions
@@ -237,3 +237,78 @@ dituzte. - `-S` *pikeaxe* funtzioa - `-L` lerroen eboluzioa edo funtzioaren eboluzioa erakusten du +## Historia berridazten + +- `git commit --amend` mini-rebase baten eragina dauka +- `git rebase -i|--interactive <commit>` aukeratutako commitera ailegatzeko + behar diren commitak aldatu. + Editorearen bitartez commit bakoitzarekin zer egin behar duen adierazi ahal + zaio: commitak batu, aukeratu, mezua berridatzi, editatu... Aukera batzuek + prozesua gelditzen dute. `git rebase --continue` egiten aurrera jarraitzen + da, edo `--abort` egiten prozesua ezeztatzen da. Komandoak berak oso ondo + azaltzen du nola egin. + +> KONTUZ: N+1 commit aldatu emaitza gutxienez commit bat behar duelako + +- `git filter-branch` eta antzeko tresnek aldaketa sakonak egin ditzakete. + Adibidez, fitxategi bat commit *guztietatik* kendu. + +## Reset eta checkout sakonki — I + +Reset eta Checkout ulertzeko Giten fitxategien egoerak eta haien arteko +trantsizioak ondo ulertu behar dira. Hiru egoera posible daude: + +1. HEAD: repositorioaren azkeneko commitaren snapshota +2. Index: *staging area*, hurrengo commitaren proposamena +3. Working Directory: Aldaketak egiten ditugun lekua + +![Egoren arteko trantsizioak](img/reset-workflow.png){height=150px} + +## Reset eta checkout sakonki — II + +- `git reset`-ek hiru modu ditu: + - `--soft`: HEAD-ak apuntatzen duen adarra mugitu + - `--mixed`: `--soft` + aldaketak indexera pasatu + - `--hard`: `--mixed` + aldaketak working direktory-ra pasatu, bertako + aldaketak zapalduz + + +## Reset eta checkout sakonki — III + +![ ](img/reset-ex1.png) + +## Reset eta checkout sakonki — IV + +![ ](img/reset-ex2.png) + +## Reset eta checkout sakonki — V + +![ ](img/reset-ex3.png) + +## Reset eta checkout sakonki — VI + +![ ](img/reset-ex4.png) + +## Reset eta checkout sakonki — VII + +![ ](img/reset-ex5.png) + +## Reset eta checkout sakonki — VIII + +![ ](img/reset-ex6.png) + +## Reset eta checkout sakonki — IX + +![Commit gehiago gehituta](img/reset-start.png) + +## Reset eta checkout sakonki — IX + +![ ](img/reset-soft.png) + +## Reset eta checkout sakonki — X + +![ ](img/reset-mixed.png) + +## Reset eta checkout sakonki — XI + +![ ](img/reset-hard.png) |