16 January 2012 GIT, GitHub Robert Muehsig

Mein Projekt “KnowYourStack.com” (Arbeitstitel war mal BizzBingo – ein detailierter Blogpost dazu folgt noch) liegt auf GitHub und ich hatte ein Problem bei dem mir Daniel Lang sehr geholfen hat. Am Ende hat er ein Fork von meinem Projekt gemacht und mir ein Pull Request eingestellt:

image

Nun ist natürlich die Frage: Wie bekomm ich denn die Änderungen zu mir?

Da ich ein völliger Anfänger in Sachen Git / GitHub bin schreibe ich mal Schritt für Schritt mit. Die Hilfe von GitHub war ein guter Anfang, allerdings muss ich bei dieser Aktion noch diverse Files mergen, was das ganze nicht einfacher macht.

git checkout master
... 
git pull https://github.com/dlang/BizzBingo master
... (VIELE DATEIEN werden gezogen)...

Ergebnis:

“Automatic merge failed; fix conflicts and then commit the result.”

$ git mergetool

 

Achtung: Man sollte allerdings vorher ein Mergetool eingestellt haben. Das ganze ist eigentlich auch recht einfach und ist hier detailiert beschrieben. Im Grunde muss man nur ein Merge Programm sich aussuchen (ich hab z.B. KDiff3 gewählt. Sieht aber hässlich aus.) und sagt git, welches Tool er beim Mergen zu nehmen hat. Am Ende sieht z.B. die .gitconfig so aus:

[diff]
    
	tool = kdiff3
 

[merge]
    
	tool = kdiff3

[mergetool "kdiff3"]
   
	path = C:/Program Files (x86)/KDiff3/kdiff3.exe

    keepBackup = false

    trustExitCode = false
 

[difftool "kdiff3"]

    path = C:/Program Files (x86)/KDiff3/kdiff3.exe

    keepBackup = false

    trustExitCode = false

 

Nach dem mergen die Files am Ende mit “commit” und “push” zu GitHub. Fertig :)

git commit -m " KOMMENTAR "
git push origin master

Müsste so klappen – Danke nochmal an Daniel! :)


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de