Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
docs:git:git_walkthrough [2012/09/21 23:48] – billh | docs:git:git_walkthrough [2012/10/09 14:30] (current) – billh | ||
---|---|---|---|
Line 21: | Line 21: | ||
git init | git init | ||
</ | </ | ||
- | * (notice that a .git directory will be created at project root) | + | * :!: (notice that a .git directory will be created at project root) |
+ | * git is cool - the complete repository (all history) is stored inside this .git directory | ||
+ | * even if you clone a repository from someone else, you have the full history available to work with - no further connection with them is required, unless you want future updates or to share code together | ||
+ | * **IF YOU ARE USING CYGWIN ON WINDOWS...**< | ||
+ | git config core.filemode false | ||
+ | </ | ||
+ | * this tells git to ignore filemode permissions which do not work correctly on a non-unix host; if you don't do this, git will always complain that you are changing file permissions when you did nothing | ||
* add all content to the index (some call it the cache, it means what is staged for the next commit)< | * add all content to the index (some call it the cache, it means what is staged for the next commit)< | ||
git add . | git add . | ||
Line 32: | Line 38: | ||
git commit -a | git commit -a | ||
- | (the -a switch will tell git to add and commit all changed files; | + | * the -a switch will tell git to add and commit all changed files; |
- | if any were added, you would need to do git add for those) | + | if any were added, you would need to do git add for those |
+ | |||
+ | * when the -m switch is used, you specify the commit message here | ||
+ | on the command line; when it is ommitted, your default editor | ||
+ | (probably vim) will open | ||
</ | </ | ||
* create an experimental branch< | * create an experimental branch< | ||
Line 88: | Line 98: | ||
* view diff of changes< | * view diff of changes< | ||
git diff | git diff | ||
+ | </ | ||
+ | * if you have already staged some changes, git diff will not show them. To see what the diff is with the staged changes, you need to do this:< | ||
+ | git diff --cached | ||
</ | </ | ||
* contrary to svn, where we would run svn revert < | * contrary to svn, where we would run svn revert < | ||
Line 95: | Line 108: | ||
</ | </ | ||
* to "go back in time" and review a project at the point of a previous commit, you can do so by creating a branch at that point and then checking it out< | * to "go back in time" and review a project at the point of a previous commit, you can do so by creating a branch at that point and then checking it out< | ||
- | git branch old 53067 | + | git checkout |
- | git checkout 53067 | + | |
(when finished, delete the branch) | (when finished, delete the branch) |