Wow that&#39;s rpetty awesome you guys are using git. I&#39;ve toyed with it, but it takes big brains. I&#39;ve also been trying out Bazaar, which is Canonical&#39;s new SVN. Great information, thanks for it!<br>Chad<br><br>
<div class="gmail_quote">On Fri, Feb 29, 2008 at 6:45 AM, Barry Carr &lt;<a href="mailto:barry@benericht.co.uk">barry@benericht.co.uk</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Folks,<br>
<br>
Here are those Git commands I used last night:<br>
<br>
** Create a repository:<br>
<br>
 &nbsp; git init<br>
<br>
if you want your repositories elsewhere set-up an environment variable called GIT_DIR<br>
<br>
** Add files to repository:<br>
<br>
 &nbsp; git add *.pas *.py *.rb<br>
<br>
add will take multiple file masks and recurs down local sub dirs. Create a .gitignore file to create<br>
a list of file extensions that git should, well, ignore. One file mask per line<br>
<br>
** To commit changes to a repository:<br>
<br>
 &nbsp; git commit -a<br>
<br>
this command will place you into git&#39;s default text editor for you to add a commit message. To<br>
change the default editor create a GIT_EDITOR environment variable that points to you favourite<br>
editor. e.g.: export GIT_EDITOR=/home/me/myeditor. Add the -m switch to write you commit message on<br>
the command line and skip the text editor stage.<br>
<br>
** To revert a change, or got back to a previous version:<br>
<br>
 &nbsp; git reset --hard HEAD<br>
<br>
Here, HEAD means the last commit. You can count backwards from the current head by using the caret<br>
e.g.: git reset --hard HEAD^ will revert to HEAD -1; HEAD^^ = HEAD -2 etc..<br>
<br>
** To create a branch:<br>
<br>
 &nbsp; git branch MyNewBranch<br>
<br>
Remember, all that the above has done is create the branch and not move you on to it. To see a list<br>
of branches just use: git branch. An asterisk displayed next to a branch indicates the current<br>
branch. A branch called master is the default branch that git automatically creates when you create<br>
a repo<br>
<br>
** To move on to a branch or change you current branch:<br>
<br>
 &nbsp; git checkout MyNewBranch<br>
<br>
** To merge two branches:<br>
<br>
 &nbsp; git checkout master<br>
 &nbsp; git merge MyNewBranch<br>
<br>
** To see if anything needs committing:<br>
<br>
 &nbsp; git status<br>
<br>
** To see the differences between whats in the repo head and on disk:<br>
<br>
 &nbsp; git diff<br>
<br>
I think its possible to specify your own diff viewer, but I&#39;m not sure how to do it.<br>
<br>
** Other useful commands<br>
<br>
 &nbsp; git fsck<br>
<br>
 &nbsp; Will check the integrity of your repository<br>
<br>
 &nbsp; git gc --prune<br>
<br>
 &nbsp; Will tidy up your repository and compact so that it will take up less space on disk.<br>
<br>
Virtually all of these commands have additional switches that I&#39;ve not explained. Full documentation<br>
can be found via Git&#39;s homepage:<br>
<br>
 &nbsp; <a href="http://git.or.cz/" target="_blank">http://git.or.cz/</a><br>
<br>
Enjoy<br>
<br>
Cheers<br>
Barry<br>
<br>
_______________________________________________<br>
dundee GNU/Linux Users Group mailing list<br>
<a href="mailto:dundee@lists.lug.org.uk">dundee@lists.lug.org.uk</a> &nbsp;<a href="http://dundee.lug.org.uk" target="_blank">http://dundee.lug.org.uk</a><br>
<a href="https://mailman.lug.org.uk/mailman/listinfo/dundee" target="_blank">https://mailman.lug.org.uk/mailman/listinfo/dundee</a><br>
Chat on IRC, #tlug on <a href="http://dundee.lug.org.uk" target="_blank">dundee.lug.org.uk</a><br>
</blockquote></div><br>