From 4c13c40aefbd7eb73586a75bd421a8b76661c8d4 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 1 Mar 2011 12:19:01 +0200 Subject: Add git cheat sheet --- git/git-cheatsheet.txt | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 git/git-cheatsheet.txt diff --git a/git/git-cheatsheet.txt b/git/git-cheatsheet.txt new file mode 100644 index 0000000..3c73666 --- /dev/null +++ b/git/git-cheatsheet.txt @@ -0,0 +1,51 @@ +Tag + + git tag -a x.y.z -m "Tag version x.y.z" + +Squash multiple commits into one + + git rebase -i HEAD~ + + http://www.gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html + +Change commit message + + git commit --amend + +Revert uncommited changes + + git reset --hard HEAD + +Setup remote repository + + On remote: + + 1. mkdir proj.git + 2. chgrp scm proj.git + 2. cd proj.git + 3. git --bare init --shared=all + 4. chgrp -R scm ../proj.git + 5. edit description + 6. cd hooks + 7. mv post-update.sample post-update + + On local: + + 1. git remote add origin scm.codesynthesis.com:/var/scm/proj/proj.git + 2. git push --tags origin master + 3. # blow the local project and do clone + +Rebasing + + Local (e.g., from a feature branch to master): + + git rebase [] + + If is not specified, current branch is used. If is + specified, it is checked out. + + Remote (e.g., merge someone else's changes): + + git fetch + git rebase origin[/master] + git push --tags origin -- cgit v1.1