This site is an archive; learn more about 8 years of OpenHatch.

[Devel] [issue185] Create a basic "git" training mission

Mike Doherty doherty at cs.dal.ca
Mon Jan 10 23:03:04 UTC 2011


On 11-01-10 06:48 PM, Asheesh Laroia wrote:
> ...a tutorial released under GPLv3...

Yes, I'm the primary author of the GPLv3 text I was planning on stealing :)

> I'd probably suggest taking a look at the diffpatch missions, and
> making sure they make sense to you.
> 
> Looking at it now, it's the *most* well-documented Python code in
> the world. You can totally ask questions on the list or IRC.

Will do!

> On the topic of validation, again, I can think of how to validate
> that the user installed git. Tell them type:
> 
> $ git --version
> 
> And ask for the output. Accept anything that looks plausible. (-:
> 
> For "Configuring Git", I'm not sure what to do about that. What 
> configuration stuff do you want to cover?

Probably the same thing as you mentioned above:

$ git config --list

... and verify that user.name and user.email have sane values.

> For "Cloning a repository" and "Viewing history", if we make a git 
> repository that has a plot, kind of like the Subversion mission, then
> we can keep the checking work simple.

These bits will likely be quite a bit harder. Perhaps I'll simply have
them clone, and then check `git log -1 HEAD`. For exploring history,
maybe multiple-choice questions on what HEAD~5 means, and what HEAD^^
means, finding the hash for a commit with a certain message, and viewing
diffs to answer a question or two.

For sharing commits, I'm thinking that instead of pushing a commit, and
validating that somehow, we can have them upload a file from
git-format-patch.

Actually coding it will be... fun :P

-Mike


More information about the Devel mailing list