So far i'm very impressed! I got the impression the git tools used to be rough round the edges.. not so any more, they are full of nice touches and its a joy to use. The documentation is great too, if you are thinking of trying git I highly recomend the users manual.
I have a few workflow-related questions i'd love to hear opinions of any other git users, especially since some of the tools a seem to have changed (e.g. cogito in moodledocs).
For local customisations i'm creating my own branch based on MOODLE_19_STABLe e.g.
git clone moodle
git branch danslocalversion MOODLE_19_STABLE
Then hack away committing along the way, e.g.
vim lib/moodlelib.php
git add lib/moodlelib.php
git commit -m 'hacked moodlelib'
Now obviously the real advantage for custom modifications is updating from upstream and reapplying my customisaitons.
For which i'm doing:
git rebase MOODLE_19_STABLE
And then if I want to test my local customisations on HEAD for 2.0 I do:
git rebase --onto cvshead MOODLE_19_STABLE
Does that workflow seem sensible?
How do you tend to 'store' your branches? Obviously the whole point of git is that its decentralised, but I still want to push my branches to a central repository so my team can work together without a steward and can carry out backups to prevent loosing all my work when my desktop blows up? How do you decide when to push a branch to a centrally?
What is the easiest way to find out what heads/tags a commit applies to?
Final question, I have git-cvsimported the cvs repository and I notice that the commit ids are different in my repo to Catalyst's repository which I don't understand.. should the generated SHA not be the same??