Slučování větví
Bylo by nám asi k ničemu vytvářet větve, kdybychom změny nemohli aplikovat zpět do mainu.
K tomu, jak dostat větev do mainu, slouží příkaz git merge.
Merge se používá vždy, pokud chceme změny nějaké větve přenést do jiné.
Používá se především k mergi pracovních větví do mainu.
Při pushnutí do mainu by se ale měl vždy vytvořit spíše Merge request,
který zajistí kontrolu a review změn před mergem do mainu.
Může se používat ale i k mergi mainu do pracovních větví v případě,
že potřebujete aktualizovat obsah z mainu do své pracovní větve.
Tento způsob ale obecně není doporučován a je lepší použít rebase.
Použití
Merge se provádí vždy z větve, do které chceme merge provést.
Pokud chceme tedy provést merge z větve dev do main, tak se checkoutneme do mainu.
Následně zavoláme příkaz:
git merge dev
Updating 6550093..9283fb9
Fast-forward
poznamky.md | 1 +
1 file changed, 1 insertion(+)
Stejně jako u standardního vytváření commitu, i zde se změna provede pouze u vás na lokálním repozitáři. Je třeba změny odeslat na server pomocí příkazu:
git push
Username for 'https://git.kmecko.cz': kratochvil@kmecko.cz
Password for 'https://kratochvil%40kmecko.cz@git.kmecko.cz':
warning: redirecting to https://git.kmecko.cz/internal/web.git/
Enumerating objects: 15, done.
Counting objects: 100% (15/15), done.
Delta compression using up to 12 threads
Compressing objects: 100% (8/8), done.
Writing objects: 100% (8/8), 665 bytes | 66.00 KiB/s, done.
Total 8 (delta 6), reused 0 (delta 0), pack-reused 0
remote:
remote: View merge request for dev-git:
remote: https://git.kmecko.cz/internal/web/-/merge_requests/47
remote:
To https://git.kmecko.cz/internal/web
063670d..fb4096e dev-git -> dev-git
Při mergi mohou nastat konflikty. Více o nich se dozvíte v kapitole konflikty.