Rebase
Rebase
on prosessi, jolla muutetaan haaran toimitushistoriaa soveltamalla sitoumuksia toiselta haaralta. Sen sijaan, että käytät merge
muutosten yhdistämistä, rebase
voit lisätä insert
uusia sitoumuksia nykyisen haaran toimitushistoriaan luomatta yhdistämistoimituksia.
Oletetaan esimerkiksi, että sinulla on kaksi haaraa: feature-branch
ja main
. Työskentelet parhaillaan feature-branch
ja haluat soveltaa viimeisimmät sitoumukset main
nykyiseen haaraasi. Voit käyttää rebasea tämän saavuttamiseksi:
git checkout feature-branch
git rebase main
Kun suoritat tämän komennon, Git ottaa sitoumukset osoitteesta main
ja ottaa ne käyttöön feature-branch
. Tämä tarkoittaa, että kaikki sitoumukset feature-branch
näkyvät osoitteesta main
. Tuloksena on selkeämpi ja luettavampi toimitushistoria feature-branch
.
Rebasea käytettäessä on kuitenkin tärkeää huomata, että toimitushistorian muuttaminen voi vaikuttaa julkisesti jaettuihin haaroihin. Siksi, jos olet jo siirtänyt sitoumuksia nykyisestä haarasta etävarastoon, on yleensä suositeltavaa olla käyttämättä rebasea kyseisessä haarassa konfliktien ja sotkuisen toimitushistorian välttämiseksi.
Branch
Vaihtaminen
Haarojen vaihto Gitissä tarkoittaa siirtymistä haarasta toiseen. Kun vaihdat haaraa, Git siirtää HEAD-osoittimen uuteen haaraan, jolloin voit työskennellä kyseisessä haarassa ja tehdä muutoksia vaikuttamatta muihin haaroihin.
Oletetaan esimerkiksi, että sinulla on sivukonttoreita feature-branch
ja main
. Vaihtaaksesi kohtaan feature-branch
, käytä seuraavaa komentoa:
git checkout feature-branch
Haarojen vaihtamisen jälkeen voit tehdä muutoksia työhakemistoon. Kaikki commit
, add
, ja checkout
komennot koskevat nykyistä haaraa.
Jos esimerkiksi lisäät uuden tiedoston ja vahvistat sen feature-branch
, vain tämä haara sisältää vahvistuksen, mutta se main
ei vaikuta. Tämän avulla voit kehittää erillisiä ominaisuuksia, korjata virheitä tai työstää koodin eri versioita itsenäisesti. Voit vaihtaa haarakonttoreiden välillä aina, kun tarvitset kutakin haaraa erikseen.