Keeping this site up to date has been an ardous task with regards to making sure that I don't overwrite custom code, making sure that I am using the right versions of the plugins and making sure that everything is working together.
With the thought of streamlining the update process I have been looking at Git and it seems fairly straightforward with the exception of handling contributed third party plugins. I have been following the instructions at http://docs.moodle.org/23/en/Git_for_Administrators and I am getting stuck at Installing a contributed extension from its Git repository. I am able to perform the first two commands listed with no issues, when I try to do the third command I get a fatal error that states "Cannot update paths and switch to branch 'MOODLE_23_STABLE' at the same time. Did you intend to checkout 'origin/MOODLE_23_STABLE' which cannot be resolved as commit?"
Is the idea here that I clone the contrib plugin, then create a new branch and name the branch something different from what I named my Moodle branch, something like "Scotts_test" (for lack of a better term right now)? Do I need to follow this same process with each plugin that we use (about 6 in total)? As well, how does this work for custom code and other integrations that require changes to core code?
I have worked with SVN and CVS in the past and feel like I have a good understanding of them, Git is a bit of a mind blow and I am still trying to wrap my head around it. Any direction and pointers are most appreciated. I am using msysgit for my Git client.