From 40615741c7a1271b198ce979dbe7784ebb3442d7 Mon Sep 17 00:00:00 2001 From: Ekaitz Zarraga Date: Tue, 24 May 2022 18:05:43 +0200 Subject: basic merging --- 1.md | 104 ++++++++++++++++++++++++++++++++++++++++++++++ img/basic-branching-4.png | Bin 0 -> 9838 bytes img/basic-branching-5.png | Bin 0 -> 8843 bytes img/basic-branching-6.jpg | Bin 0 -> 7564 bytes img/basic-merging-1.jpg | Bin 0 -> 11863 bytes img/basic-merging-2.jpg | Bin 0 -> 6225 bytes 6 files changed, 104 insertions(+) create mode 100644 img/basic-branching-4.png create mode 100644 img/basic-branching-5.png create mode 100644 img/basic-branching-6.jpg create mode 100644 img/basic-merging-1.jpg create mode 100644 img/basic-merging-2.jpg diff --git a/1.md b/1.md index 664f788..c52c546 100644 --- a/1.md +++ b/1.md @@ -396,3 +396,107 @@ $ git log --oneline --decorate --graph --all > KONTUZ: Ez bada `--all` egiten ez dira defektuz adar guztiak bistaratzen `git > log`-en bitartez. + + +## Adarrak eta mergeak — I + +![](img/basic-branching-4.png){ height=180px } + +## Adarrak eta mergeak — II + +**Fast forward** kasua. Adar bat bestearen barruan dago. + +![`git checkout master` +`git merge hotfix`](img/basic-branching-5.png){ height=200px } + +## Adarrak eta mergeak — III + +Beti ez da hain erreza. Demagun: + +![](img/basic-branching-6.jpg){ height=180px } + +## Adarrak eta mergeak — IV + +Arbaso amankomuna (*common ancestor*) ateratzen saiatzen da eta bi buruekin eta +arbaso amankomunarekin *three-way merge* bat egiten du. + +![`git checkout master` +`git merge iss53`](img/basic-merging-1.jpg){ height=180px } + +## Adarrak eta mergeak — V + +Commit berri bat gehitzen du, bi adarrak lotzen dituena. + +*Merge* commita da: bi guraso (edo gehiago) ditu. + +![`git checkout master` +`git merge iss53`](img/basic-merging-2.jpg){ height=180px } + +## Konfliktoak — I + +Aurreko kasua ez da beti ondo ateratzen, batzutan konfliktoak egon daitezke +bi adarretan aldaketak leku berdinetan agertzen direnean: + +``` +$ git merge iss53 +Auto-merging index.html +CONFLICT (content): Merge conflict in index.html +Automatic merge failed; fix conflicts and then +commit the result. +``` + +## Konfliktoak - II + +``` +$ git status +On branch master +You have unmerged paths. + (fix conflicts and run "git commit") + +Unmerged paths: + (use "git add ..." to mark resolution) + + both modified: index.html + +no changes added to commit (use "git add" and/or +"git commit -a") +``` + +## Konfliktoak - III + +Fitxategia horrela ikusten da: + +``` +<<<<<<< HEAD:index.html + +======= + +>>>>>>> iss53:index.html +``` + +Separadoreak daude `<<<<<<<`, `=======` eta `>>>>>>>`. + +Lehenengo zatian `HEAD`-en zegoena dago eta bigarrenean `iss53`-n zegoena. +Eskuz erabaki behar da konfliktoa nola konpondu. + +## Adarrak kudeatzeko + +- `git branch` adarrak listatzeko +- `git branch --merged | --no-merged` oraingo adarrarekin mergeatuta edo + mergeatu gabe dauden adarrak listatzeko +- `git branch -d ` adarrak ezabatzeko. Mergeatu gabe dauden adarrak ez + ditu zuzenean ezabatzen. +- `git branch --move ` izenez aldatzeko. +- `git push --set-upstream ` remoteari zein adar erabili behar + duen esateko +- `git push --delete ` remotean adar bat ezabatzeko + +## Adarrekin workflow ezberdinak + +- Long running branches: `master`, `testing` eta `development` +- Topic branches: issue eta feature bakoitzeko adar berri bat eratzen da. + +## Adarrak remotetan diff --git a/img/basic-branching-4.png b/img/basic-branching-4.png new file mode 100644 index 0000000..ab8f222 Binary files /dev/null and b/img/basic-branching-4.png differ diff --git a/img/basic-branching-5.png b/img/basic-branching-5.png new file mode 100644 index 0000000..947133f Binary files /dev/null and b/img/basic-branching-5.png differ diff --git a/img/basic-branching-6.jpg b/img/basic-branching-6.jpg new file mode 100644 index 0000000..6023d69 Binary files /dev/null and b/img/basic-branching-6.jpg differ diff --git a/img/basic-merging-1.jpg b/img/basic-merging-1.jpg new file mode 100644 index 0000000..e1bcc27 Binary files /dev/null and b/img/basic-merging-1.jpg differ diff --git a/img/basic-merging-2.jpg b/img/basic-merging-2.jpg new file mode 100644 index 0000000..a243826 Binary files /dev/null and b/img/basic-merging-2.jpg differ -- cgit v1.2.3