Git-commando’s


Al een tijdje geleden mocht ik de wondere wereld ontdekken die Git heet. (mee) Ontwikkeld trouwens door dezelfde kerel die ooit een os uit z’n mouw schudde.

Soit, nu we op school ook Git gaan gebruiken werd het tijd om wat commando’s op te frissen. En te delen met andere zielen op deze wereld. Je weet maar nooit waar dat goed voor is. 😉

Git installeren blijkt trouwens niet altijd even gemakkelijk te zijn maar dankzij MacPorts volstond 1 regeltje:

$ sudo port install git-core

Start

Maak van je huidige map en git-project.

$ git init

Alle andere commando’s die je vanaf nu uitvoert zijn in deze map.

Workflow

Is er iets veranderd?

$ git status
1 bestand toevoegen

$ git add filename.ext
Alle bestanden van de huidige map toevoegen

$ git add *
Als al je bestanden die je nodig hebt zijn toegevoegd dan kan je
je wijzigingen opslaan (committen) waar -m staat voor een boodschap (message) die je wil toevoegen.

$ git commit -m "Dit is mijn boodschap" 
Als je klaar bent en je wijzigingen naar de server wil doorsturen gebruik je onderstaande code. Waarbij origin de branch is naarwaar je ‘t wil sturen.

$ git push -u origin master

Code van de server halen

Git pull haalt wat je vraagt van de server. In dit geval het volledige project dus. Daarbij zal hij slim te werk gaan en gewijzigde bestanden standaard eerst fetchen en dan mergen.

$ git pull git@github.com:Username/project.git
Fetch lijkt op pull maar zal de (gewijzigde) bestanden niet samenvoegen (mergen)

$ git fetch git@github.com:Username/project.git
Clone tenslotte zal het volledige project klonen. Handig als je in een nieuwe map wilt beginnen werken aan je project.

$ git clone git@github.com:Username/project.git

Conflicten oplossen

git mergetool

It opens a GUI that steps you through each conflict and you get to choose how to merge. Sometimes it requires a bit of hand editing afterwards, but usually it’s enough by itself. Much better than doing the whole thing by hand certainly

Change origin

Add origin

cd /path/to/my/repo
git remote add origin ssh://git@bitbucket.org/username/projectname.git
git push -u origin –all # pushes up the repo and its refs for the first time
git push -u origin –tags # pushes up any tags

Remove already existing origin

git remote -v

git remote rm destination
# Remove remote

Pull

Ge hebt ne verkeerde pull gedaan?

doe hem dan terug weg
git reset HEAD@{1}

Stash

Om alle stashes te zien

git stash list

om ne stash te verwijderen

git stash drop

Reageer