openhatch

Issue185

Title Create a basic "git" training mission
Milestone 0.11.05 Priority feature
Waiting On Status resolved
Superseder Nosy List Mark, TravisB, doherty, jesstess, palhmbs, paulproteus
Assigned To palhmbs Keywords

Created on 2010-11-20.22:09:05 by paulproteus, last changed 2011-05-01.09:12:39 by paulproteus.

Files
File name Uploaded Type Edit Remove
0001-Final-Git-Changes.patch palhmbs, 2011-05-01.09:08:27 application/octet-stream
0001-Implement-most-of-Git-mission.-Squashed-from-9-commi.patch paulproteus, 2011-04-24.02:09:29 text/x-patch
0001-URL-Fix.patch palhmbs, 2011-04-24.09:25:49 application/octet-stream
Git_mission_9_squashed_commits.patch pythonian4000, 2011-04-24.01:05:30 text/x-patch
git_mission.patch Mark, 2011-04-18.21:52:08 text/x-patch
Messages
msg1792 (view) Author: paulproteus Date: 2011-05-01.09:12:39
This is "done", subject to the bugs that are in the tracker.

Yay palhmbs and Mark and everyone else that pushed this forward.

The "Final Git Changes" patch missed 0.11.04 by about 3 minutes, but it's still
April somewhere in the world.
msg1791 (view) Author: palhmbs Date: 2011-05-01.09:08:27
Hopefully the new changes to add some <code> tags to make the git commands clearer 
works in this patch.
msg1774 (view) Author: palhmbs Date: 2011-05-01.02:09:39
I've decided to use <abrev> to include some hints - and I put paulproteus's note 
at the bottom of "Creating a Patch" 

I decided to link to the diff patch mission from inside that note, and the 
settings.py has the http:// instead of git://
msg1773 (view) Author: palhmbs Date: 2011-05-01.02:06:54
Hopefully I've managed to add in paulproteus's suggestions...

Please review!
msg1770 (view) Author: palhmbs Date: 2011-04-30.22:23:11
Seems that Travis has disappeared. Therefore, I'll finish this off for this 
milestone.
msg1725 (view) Author: palhmbs Date: 2011-04-24.19:34:00
I've been trying to work out how to pass http through nginx, so that git clone 
works. So far I haven't found a solution. 
Also, most people nowadays are using gitolite to serve up their repos, and I'm 
pretty sure we don't need as complete as gitolite.

paulproteus thought it would be easy using -- 
http://norbu09.org/2009/08/02/git-via-HTTP-(startup-automation-3).html

I have tried with directions above and -- 
http://www.toofishes.net/blog/git-smart-http-transport-nginx/

I also have gone through the mission and it all seems to work wonderfully with a 
git daemon on git://.
msg1724 (view) Author: palhmbs Date: 2011-04-24.09:25:49
Fixed a small problem with a URL - was a return between url and mysite

  -<p>If you want to know more about git, read <a href="{% url
  -mysite.missions.git.views.long_description %}">more about Git</a>.</p>
  +<p>If you want to know more about git, read
  +<a href="{% url mysite.missions.git.views.long_description %}">more about 
Git</a>.</p>
msg1721 (view) Author: paulproteus Date: 2011-04-24.02:09:29
This patch actually applies, and isn't corrupted by cgit.
msg1720 (view) Author: pythonian4000 Date: 2011-04-24.01:05:30
Here be a squashed version of Mark's patch, after fixing tht mysite/settings.py
diffs to apply on the current origin/master.
msg1711 (view) Author: palhmbs Date: 2011-04-23.21:02:28
Me and TravisB are gonna work on this for the milestone - so I added Travisb to 
the nosy.
msg1608 (view) Author: Mark Date: 2011-04-18.21:52:08
Attached is the patch of everything I have thus far. Additional changes needed is 
the feedback from paulproteus and the ability to serve the repository.  The URL 
for checkout will need to be updated in the template, as it currently says to use 
the git method of pulling the repo, rather than http.

Feedback from paulproteus. (note it was later decided that a specific bash/editor 
mission was probably more suited to teaching those skills than the git mission 
would be.)

* Second page: You're asking people to read the code comments to find the author 
of something, but that's confusing because "git log" and "git annotate" (AKA "git 
blame") are the more common tools for finding the author of some code. Maybe you 
could ask them to do something different, like paste the output of the program?

Also, people have suggested we explain to people they need to "cd" into a 
directory, or open a particular file with a text editor -- whatever you ask 
people to do, it should only be unclear if that's what you want. We can't 
necessarily assume much of the skill level of people running through these 
missions.

* Third page: I would link to the diff/patch mission in the text, and also have a 
paragraph like:

"Files created by git format-patch are like normal patch files, but they also 
carry information about the git commit that created the patch: the author, the 
date, and the commit log message are all there at the top of the patch."

Also, you don't explain here how to "check your changes into your local copy".

Also, if the person is an OS X user, we could suggest they creating the
patch with GitX, or with gitg in GNU/Linux-y systems.

Also, "open the patch file" in what?
msg1543 (view) Author: paulproteus Date: 2011-04-16.19:13:55
A snapshot of Mark's work so far is at 
https://docs.google.com/document/d/16uZQWvvYWoWob2gjwCwqv24Wi9IRfllqCb5pw0oiu9c
/edit?hl=en&authkey=CP2JvrIM
msg1525 (view) Author: pythonian4000 Date: 2011-04-14.23:15:20
Mark just posted on Devel that he is getting close to having patches for this,
so I'm chucking it in the latest milestone (which we now have two weeks for ^_^ ).
msg1064 (view) Author: Mark Date: 2011-02-14.17:57:57
Notes from Paulproteus: the most useful one would be a training mission that 
teaches how to use git format-patch, assuming no git knowledge.
msg795 (view) Author: doherty Date: 2011-01-25.23:44:28
This month's milestone is turning out to be too ambitious :(
msg719 (view) Author: paulproteus Date: 2011-01-09.06:14:21
Hey Mike!

I think that it would be helpful to agree on the "plot" of the mission before
you start coding it. If you have some ideas for it, I suggest you mail them to
devel@ and we can discuss there. If  not, then you and I and the rest of
#openhatch can brainstorrm on IRC first.

Then, I suggest that you submit some patches that add the skeleton of the
mission to the codebase. By "skeleton" I'm thinking, just enough to show all the
pages, and put some placeholder text on them.

Then, I suggest you modify the mission so it actually does whatever the "meat"
of the mission is. (For example, for the Subversion mission, this would be
tracking the state of the user through the mission, and the work of creating a
Subversion repository for the user, and the complex code that validates the
user's input.)
msg704 (view) Author: doherty Date: 2011-01-08.21:53:08
I've started this just now...
msg659 (view) Author: paulproteus Date: 2010-12-18.21:48:21
Later!
msg582 (view) Author: paulproteus Date: 2010-11-20.22:09:05
It would be really nice if we had a training mission for "git". Then we could
remove the "First, a word about git" discussion from
http://openhatch.org/wiki/Adding_a_field_to_the_profile
History
Date User Action Args
2011-05-01 09:12:39paulproteussetstatus: need-review -> resolved
messages: + msg1792
milestone: 0.11.04 -> 0.11.05
2011-05-01 09:08:54palhmbssetfiles: - 0001-Changes-for-git-mission.patch
2011-05-01 09:08:27palhmbssetfiles: + 0001-Final-Git-Changes.patch
messages: + msg1791
2011-05-01 09:07:32palhmbssetmessages: - msg1778
2011-05-01 04:30:14palhmbssetfiles: + 0001-Changes-for-git-mission.patch
messages: + msg1778
2011-05-01 04:30:01palhmbssetfiles: - 0001-Changes-for-git-mission.patch
2011-05-01 02:09:46palhmbssetstatus: in-progress -> need-review
2011-05-01 02:09:39palhmbssetmessages: + msg1774
2011-05-01 02:06:54palhmbssetfiles: + 0001-Changes-for-git-mission.patch
messages: + msg1773
2011-04-30 22:23:11palhmbssetassignedto: TravisB -> palhmbs
messages: + msg1770
nosy: + palhmbs
2011-04-24 19:34:02palhmbssetmessages: + msg1725
2011-04-24 09:25:50palhmbssetfiles: + 0001-URL-Fix.patch
messages: + msg1724
2011-04-24 02:09:29paulproteussetfiles: + 0001-Implement-most-of-Git-mission.-Squashed-from-9-commi.patch
messages: + msg1721
2011-04-24 01:05:30pythonian4000setfiles: + Git_mission_9_squashed_commits.patch
messages: + msg1720
2011-04-23 21:02:28palhmbssetassignedto: Mark -> TravisB
messages: + msg1711
nosy: + TravisB
2011-04-18 21:52:10Marksetfiles: + git_mission.patch
messages: + msg1608
2011-04-16 19:13:55paulproteussetmessages: + msg1543
2011-04-14 23:15:20pythonian4000setmessages: + msg1525
milestone: later -> 0.11.04
2011-02-15 18:10:15Marksetassignedto: doherty -> Mark
2011-02-14 17:57:57Marksetnosy: + Mark
messages: + msg1064
2011-02-12 17:02:01jesstesssetnosy: + jesstess
2011-01-25 23:44:28dohertysetmessages: + msg795
milestone: 0.11.01 -> later
2011-01-09 06:14:21paulproteussetmessages: + msg719
2011-01-08 21:55:19dohertysetmilestone: later -> 0.11.01
2011-01-08 21:53:08dohertysetstatus: chatting -> in-progress
assignedto: doherty
messages: + msg704
nosy: + doherty
2010-12-18 21:48:21paulproteussetstatus: unread -> chatting
messages: + msg659
milestone: 0.10.12 -> later
2010-11-20 22:09:05paulproteuscreate