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

[Devel] Design for git mission - comments or edits?

Asheesh Laroia asheesh at asheesh.org
Wed Feb 16 20:21:04 UTC 2011


On Wed, 16 Feb 2011, Asheesh Laroia wrote:

> On Wed, 16 Feb 2011, Krzysztof Tarnowski wrote:
>
>> Hi Mark,
>> 
>> The mission's design is well though out and required only minimal language 
>> adjustments. Good work!
>> 
>> I propose that we name it 'Basic Git' (or similar), so we can later create 
>> additional Git mission(s) (called, let's say, 'Advanced Git') which covers 
>> branching, merging and rebasing.
>
> Krzysztof, I think this is a good idea.
>
> Mark, I think that the curriculum you have is quite reasonable in terms of 
> what people learn. Maybe it would be useful to mirror the Subversion mission 
> -- our robot could apply the patch to the repo that the user sees, and then 
> we ask the user to update his/her repository and show us that they can "git 
> pull --rebase" properly.

Okay, here's my attempt at a different first page:

<opening_page>

The set-up

Image: http://imgs.xkcd.com/comics/duty_calls.png

Somebody out there tried to write a "Hello, world!" program. But they 
wrote it as as "Goodbye", world! What a mess.

Luckily, you can step in and submit a patch. I bet the maintainer would 
accept it, too.

Audience:

The intended audience are new contributors to open source. If you can edit 
text files and use a terminal, then you can follow it.

What you'll learn

You'll learn about how to clone a git repository, make a commit, submit a 
patch, and rebase your work onto the new version provided by the 
maintainer.

</opening_page>

I also did add a section to the end of it about doing a git fetch && git 
rebase, and using the commit ID of the patch the user submitted

Also, I think that the "git config" things and installing git at all are 
two of the hardest things any git user has to deal with; I think there 
should be an "Installation" mission step where you validate that the user 
can generate the output of "git --version", and a separate mission step to 
configure the user.name and user.email.

I think it's worth being really clear that these are important steps that 
people can trip-up on.

Also, it's important that we not make the git mission require that people 
have a working programming environment of any particular kind. I'm veering 
things slightly toward that, but I guess it's okay so long as we don't 
force them to *run* the "Goodbye, world" program.

That's what I'm thinking!

-- Asheesh.

-- 
Q:	What do you call a half-dozen Indians with Asian flu?
A:	Six sick Sikhs (sic).


More information about the Devel mailing list