Creating a new workshop
=======================
-There is a central repository for all workshops [1].
+There is a central repository for all boot camp material [1].
https://github.com/swcarpentry/workshop
-The “master” branch has the current state-of-the-art source (Markdown,
-ReST, LaTeX, …) for the instructors' projected content (HTML pages,
-PDF slides, …), handouts, workshop homepage, …. If we can't agree on
-a canonical representation, there may be a handful of feature branches
-with alternative content.
+The “master” branch has the current state-of-the-art source for the
+instructors' projected content (HTML pages, PDF slides, …), handouts,
+workshop homepage, …. If we can't agree on a canonical
+representation, there may be a handful of feature branches with
+alternative content.
+
+Topics will live in per-subject subdirectories, ideally organized in
+half-day-sized chunks.
+
+ .
+ ├── README.md
+ ├── debugging
+ │ ├── README.ipynb
+ │ …
+ ├── make
+ │ ├── README.md
+ │ ├── example-project
+ │ …
+ ├── python
+ │ ├── README.rst
+ │ ├── animals.txt
+ │ …
+ ├── shell
+ │ …
+ ├── version-control
+ │ ├── git
+ │ │ ├── basic
+ │ │ │ …
+ │ │ └── advanced
+ … … …
+
+ Figure 1: Example directory tree for the current 2012-12-my-workshop
+ tip. Sections should be in half-day-ish chunks. Complicated topics
+ that need more detailed coverage (e.g. version control) can have
+ nested sub-sections.
An instructor preparing for a new workshop should create a
per-workshop branch from the master:
\-o--o \ git-wtk
\------o 2012-12-my-workshop
- Figure 1: Graph of commits for the beginning of the
+ Figure 2: Graph of commits for the beginning of the
2012-12-my-workshop branch. Time increases to the right. Commits
are marked with “o”. ASCII art connects child commits with their
parents. The merge of a well-maintained feature branch should be
$ git clone --single-branch …
-Topics will live in per-subject subdirectories, ideally organized in
-half-day-sized chunks.
-
- .
- ├── README
- ├── index.rst
- ├── debugging
- │ ├── index.ipynb
- │ …
- ├── make
- │ ├── index.md
- │ ├── example-project
- │ …
- ├── python
- │ ├── index.rst
- │ ├── animals.txt
- │ …
- ├── shell
- │ …
- ├── version-control
- │ ├── git
- │ │ ├── basic
- │ │ │ …
- │ │ └── advanced
- … … …
-
- Figure 2: Example directory tree for the current 2012-12-my-workshop
- tip. Sections should be in half-day-ish chunks. Complicated topics
- that need more detailed coverage (e.g. version control) can have
- nested sub-sections.
-
Developing workshop content
===========================
If you don't have strong ideas about the content, there's probably not
much to do here besides tweaking a few workshop-specific bits
-(location, dates, master-index, …). These changes should go into the workshop
-branch:
+(location, dates, master-index, …). These changes should go into the
+workshop branch:
-o--o--o--o--o master
\-o--o \ git-wtk
commit message
------ -----------------------------------------------------
- a index.rst: link to shell, git/basic, and git/advanced
- b index.rst: localize for 2012-12 workshop at my house
+ a README.md: link to shell, git/basic, and git/advanced
+ b README.md: localize for 2012-12 workshop at my house
If you want to change some of the general content, you have some
choices.
Figure 3: General changes go into their general branch. Example log:
commit message
- ------ ------------------------------------------------------------------
- a version-control/git/basic: fix origin\master -> origin/master typo
+ ------ --------------------------------------------------
+ a git/basic: fix origin\master -> origin/master typo
b merge recent master branch updates
2. If you can't commit to the central repo, put your changes in their
This is not really part of the workshop-branch vs. workshop-repo
discussion, but one benefit to the workshop-repo approach is that each
-workshop has a gh-pages website at
+workshop may have a gh-pages website at
http://<user>.github.com/<repo>
http://swcarpentry.github.com/2012-12-my-workshop