====== Mit git branches arbeiten ======
Du befindest dich im Branch ''%%master%%'' und verzweigst von hier in einen neuen Branch mit dem Namen ''%%foo%%'' um deine Änderungen zu machen:
git checkout -b foo
Du befindest dich jetzt bereits im Branch ''%%foo%%''. Um zurück in den ''%%master%%'' zu kommen hilft ''%%git checkout master%%'', den Branch ''%%foo%%'' löschen kannst du mit ''%%git branch -d foo%%''.
Bis jetzt befindet sich der Branch nur lokal bei dir, möchtest du das ändern:
git push origin
git push --set-upstream origin # wenn in Zukunft ein einfaches "git push" funktionieren soll
Aber bleiben wir im Branch ''%%foo%%'' und machen dort unsere Arbeit. Wenn wir fertig sind wollen wir testen ob alles noch so funktioniert wie es soll, leider können sich in der Zwischenzeit Änderungen am ''%%master%%'' ergeben haben, diese sollten wir mit testen. Daher mergen wir den aktuellen Stand von ''%%master%%'' (vorher in ''%%master%%'' ein ''%%git pull%%'' ausführen) in unseren Branch.
git merge
z.B. git merge master
Wenn wir uns im Branch ''%%foo%%'' befinden bedeutet das, dass git versucht alle Unterschiede vom ''%%master%%'' in unseren ''%%foo%%'' zu übernehmen.
Jetzt Testen.
Wenns passt müssen die Ändererungen von ''%%foo%%'' in den ''%%master%%'' rüber und somit ins live-System. Hierzu in den Branch ''%%master%%'' wechseln und jetzt ''%%foo%%'' nach ''%%master%%'' mergen.
git checkout master
git merge foo
Noch ein abschließender Test das alles geklappt hat und dann ein ''%%push%%''.