Difference between revisions of "GIT Cheat Sheet"
From Tmplab
(→Seeing files inside repository) |
(→Branching) |
||
Line 29: | Line 29: | ||
git checkout <NEW_BRANCH_NAME> | git checkout <NEW_BRANCH_NAME> | ||
git commit -a | git commit -a | ||
− | git merge | + | git checkout master |
+ | git merge <NEW_BRANCH_NAME> | ||
+ | |||
+ | Diff between two branches | ||
+ | git diff master..<NEW_BRANCH_NAME> | ||
= Remote commands = | = Remote commands = |
Revision as of 23:54, 16 March 2010
Basic commands (local)
Creating
git init
Adding files
git add <filename>
or to commit all files in current directory:
git add .
Committing changes
git commit -m <message>
Seeing changes
git log
Tagging
Adding a tag
git tag <tagname> -m "Comment about this tag"
Listing tags with comments
git tag -n
Seeing files inside repository
git ls-files git ls-tree HEAD
Branching
git branch git branch <NEW_BRANCH_NAME> git checkout <NEW_BRANCH_NAME> git commit -a git checkout master git merge <NEW_BRANCH_NAME>
Diff between two branches
git diff master..<NEW_BRANCH_NAME>
Remote commands
Creating an empty project on a remote machine
For first import into a GIT server for example:
ssh username@yourcheaphost.com mkdir -p ~/git/yourproject.git cd ~/git/yourproject.git git --bare init
And then on the local machine:
mkdir yourproject cd yourproject git init git remote add origin ssh://username@yourcheaphost.com/~/git/yourproject.git touch .gitignore git add . git commit -m "Initial Commit" git push origin master
and add this to your .git/config in your project.
[branch "master"] remote = origin merge = refs/heads/master
Push your developer commits to server
git push origin master
Get a copy of a project
git clone gitservername:proj1 proj1
Update my local copy with the server's copy
git pull
Get server's copy from a new machine
git clone ssh://[<user@>]yourcheaphost.com/git/yourproject.git
References
- Good guide: http://www.sourcemage.org/Git_Guide
- Another good one: http://toolmantim.com/article/2007/12/5/setting_up_a_new_rails_app_with_git
- Cmds vs. SVN: http://git.or.cz/course/svn.html
- 10 Good Examples: http://www.kernel.org/pub/software/scm/git/docs/everyday.html
- Good FAQ: http://git.or.cz/gitwiki/GitFaq
- Good cheat sheet http://cheat.errtheblog.com/s/git