Some doc for Git¶
- http://git.or.cz : Offical Site
- http://www-cs-students.stanford.edu/~blynn/gitmagic/index.html
- http://www-lil.univ-littoral.fr/~quesnel/download/git.pdf : Course for Git (in french)
- http://cheat.errtheblog.com/s/git : A summary of the commands
- http://lwn.net/Articles/317154 : git bisect tutorial, very useful to find a wrong commit
How to use Git¶
Configure¶
$ git config --global user.name "Bob User"
$ git config --global user.email "bobg@my.site.com"
Get the files¶
Clone http
$ git clone http://git.tosca-project.net/tosca.git tosca
Clone git
$ git clone '''$login'''@tosca-project.net:/var/git/tosca.git tosca
Create a patch¶
Small patch, fast way :
$ git diff
Big patch, longer way, with a local branch :
Create a local branch
$ git checkout -b workingbranch master
Make your patch
$ edit some_files
$ git add | git mv | git rm | vim | emacs
Commit
$ git status
$ git commit -a -m "this patch does this & this because of this"
Time to time, you can keep up your local branch with the repository :
git-checkout master # sur la branche master
git-pull # merge local branch with master, brute force
git-rebase # merge local branch with master, softer : it's interactive and does not commit the result
Extensions annoy me¶
Then you can delete them :
$ rm -Rf vendors/extensions
$ git checkout vendors/extensions
Conf file for git copy it to .git/config¶
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = tosca-project.net:/var/git/tosca.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "production"]
remote = origin
merge = refs/heads/production