Skip to content

Instantly share code, notes, and snippets.

@runephilosof
Last active October 13, 2015 21:19
Show Gist options
  • Save runephilosof/4257139 to your computer and use it in GitHub Desktop.
Save runephilosof/4257139 to your computer and use it in GitHub Desktop.
Git workflow

Git Workflow

Lav være med at bruge netbeans til git pull, den gør meget mærkelige ting!

Make filen peger på base branch, så det er indholdet af basebranch der ligger på produktionsmiljøet.

Vi burde muligvis lave en branch navn eller tag, som definerer hvad der ligger på produktionsmiljøet?

Vi skal så vidt muligt undgå at lave commits i ding2tals repositories, som ikke skal med i ding2tal, det giver bare bøvl for os selv.

Jeg går ud fra følgende remote opsætning:

git remote add oc git@github.com:odensecentralbibliotek/repo
git remote add d2t git@github.com:ding2tal/repo
git fetch --all

Når ding2tal har lavet nye ændringer som vi vil hente:

git fetch --all
git checkout development
git pull d2t development
git push oc development
#hvis vi bruger en anden branch som base branch (fx merge)
git checkout merge
git merge --no-ff development
git push oc merge

Vi laver alle nye commits på feature branches.

Vi skal basere vores commits på den nyeste commit som findes i både oc og d2t:

git fetch --all
hash=$(git merge-base d2t/development oc/merge)
git checkout -b feature $hash

Når vi har baseret en feature branch på en commit som ikke er den nyeste i ding2tal, så skal vi lige tjekke at vores feature branch kan merges ind i ding2tal uden konflikter

git fetch --all
git checkout -b conflicttest d2t/development
git merge --no-commit feature
#git merge efterlader ændringer, fjern dem med:
git merge --abort
git checkout development
git branch -D conflicttest

Hvis der er konflikter for vores feature, så skal vi oprette en ny branch baseret på vores feature branch og merge ding2tal's development ind i denne og løse konflikten.

git fetch --all
git checkout -b feature-pr feature
git merge d2t/development
#løs konflikten, læs eventuelt i git help merge, hvordan man løser konflikter.
#basically sørg for at alt ser rigtigt ud, se diffen igennem.
git add "de filer med konflikter"
git commit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment