Difference between revisions of "Git for dummies"
(git-commit -a) |
(reverting changes) |
||
Line 1: | Line 1: | ||
+ | ==The basics== | ||
===Setup=== | ===Setup=== | ||
Line 44: | Line 45: | ||
The -a tells git to commit "all" | The -a tells git to commit "all" | ||
+ | |||
+ | If you screw up changes to a file, and just want to put it back: | ||
+ | git checkout myfile | ||
+ | |||
+ | think of checkout (when used like this) as the git equivalent of "svn revert". | ||
Now send your locally committed changes to the main repository: | Now send your locally committed changes to the main repository: |
Revision as of 20:24, 15 November 2008
The basics
Setup
Set up your system:
sudo apt-get install git-core git config --global user.email somebody@somewhere.tld git config --global user.name "John Doe"
Note that if you are using debian etch, you will need to get a backport of git from backports.org.
Getting the repo
Get a copy of the library project (assuming the central repository is on a server named dev.freegeek.org):
git clone dev.freegeek.org:/git/library cd library/
Sort of like svn update:
git pull
Like svn update (but if you have local commits):
git fetch git rebase origin/master
(Master is like trunk is in svn.)
Making changes
Now edit a file
vi TODO
(See it's just like svn!!)
Now schedule this modification to be committed locally:
git add TODO
Want to see changes that you hain't yet git added?
git diff
Want to see what you are about to commit?
git diff --cached
Now commit it locally:
git commit
Now, if you want to commit all of the changes you've made, but don't want to "git add" a million files, you can shorted it to this:
git commit -a
The -a tells git to commit "all"
If you screw up changes to a file, and just want to put it back:
git checkout myfile
think of checkout (when used like this) as the git equivalent of "svn revert".
Now send your locally committed changes to the main repository:
git push