Skip to content

Commit

Permalink
Merge pull request #10 from manuGil/review
Browse files Browse the repository at this point in the history
Editing content lessons 1-3
  • Loading branch information
manuGil authored Sep 2, 2024
2 parents eb80724 + 1e505f1 commit 56e14f3
Show file tree
Hide file tree
Showing 10 changed files with 306 additions and 225 deletions.
7 changes: 4 additions & 3 deletions gitcodev/curriculum.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,9 +100,10 @@ This course is organised into lessons, episodes and topics. The course consists
| --- | Exploring the GitHub GUI |
| --- | Collaborating |
| **3.2** | **Collaborative Development for Research Software** |
| --- | When should we aim for a collaborative approach? |
| --- | Management strategies |
| --- | Roles and responsibilities |
| --- | Introduction to collaboration in software projects |
| --- | Managing research software projects |
| --- | Organising research teams for collaborative development |
| **3.3** | Collaborative Workflows |
| --- | Documenting issues |
| --- | Centralise workflow: branching
| --- | Pull requests
Expand Down
11 changes: 11 additions & 0 deletions gitcodev/exercises/L3-ex01.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

# Lesson 3 Episode 1 --- Clone a reposiory and make a contribution
**Time: 10 min**

Please perform the following tasks individually.

1. Clone the Check-in repository via SSH: https://github.com/manuGil/check-in
1. Make a copy of the file `check-in/template.md` in the same directory; give it an anonymous name, ex. `<name-initials><3-last-digits-phone>.md`
1. Open your copy of `template.md` and add something to the lists in the file.
1. Commit your changes, and push them to the remote repository. You might experience difficulties doing that, follow the suggestions given by Git.
1. Reflect on the difficulties you faced, and how we might avoid them.
12 changes: 12 additions & 0 deletions gitcodev/exercises/L3-ex02.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Lesson 3 Episode 2 --- Roles and Responsibilities
**Time: 6 min**

Please perform the following tasks in teams.

1. Make teams of 3 or 4 people. You will work together during group exercises.
2. Assign roles and responsibilities to each member; you should and up with:
- One project owner
- One administrator
- One or more collaborators
- Zero or more reviewers
3. Choose a name for the team.
12 changes: 12 additions & 0 deletions gitcodev/exercises/L3-ex03.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Lesson 3 Episode 3 --- Branching workflow
**Time: 15 min**

As a Team, work on the following coding taks using the **branch** worflow model.

1. [Administrator] Creates a repository using [this template](https://github.com/the-magnificents/collab-branching)
2. [Administrator] Invites all team members to the team's repository as collaborators.
3. [Team] Read the `TODO.md` file and each member choses a tasks for the next step.
4. [Collaborator] each member opens an issue for the chosen task.
5. [Collaborator] Apply the branching model to complete the chosen task.
6. [Collaborator] Commit and push changes to the team's repository.

9 changes: 9 additions & 0 deletions gitcodev/exercises/L3-ex04.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Lesson 3 Episode 3 --- Pull requests
**Time: 6 min**

Working as a team merge the changes made in the previous exercise into the main branch of the team’s repository.

1. [Collaborators] create a pull request for their own branch. Give your pull request a meaning name, and a short and clear description.
2. Are there any conflicts? Resolve them using the GitHuB GUI. Ask for help if you need to.
3. [Collaborators] Merge the pull request to the main branch using the method of their choice.
4. Check the main branch to confirm that your changes have been merged.
11 changes: 11 additions & 0 deletions gitcodev/exercises/L3-ex05.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Lesson 3 Episode 3 --- Forking workflow
**Time: 15 min**

Working in teams, apply FAIR principle to a Git repository using a [FAIR software checklist.](https://tu-delft-dcc.github.io/software/checklist.html)

1. [Administrator] creates a repository for the team using the [collab-faircode template repository](https://github.com/the-magnificents/collab-faircode). As name for the reposotory use <team-name>-faircode
3. [Team] Go thru the Fair software checklist and assign one item from the list to each member.
3. [Collaborator] open an issue about the item you chose.
2. [Collaborator] fork the team's repository to their accounts.
4. [Collaborator] Clone their fork to their local machine, make changes to address ther issue and push changes to their forks.
5. [Collaborator] Make a pull request from your fork to the base repository.
9 changes: 6 additions & 3 deletions gitcodev/lesson1.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# LESSON 1: Fundamental Operations with Git

A hands-on lesson for introducing version control, tracking changes, and the tracking history. At the moment, there are no detail explanations for each of the topics. But we expect the experienced instructor will be able to provide explanations using the topics and code snippets below.
Accidental errors have been removed, but intended errors have been kept.
Lecture notes on the fundamental operation with Git. A hands-on lesson for introducing version control, tracking changes, and the tracking history.

After each excercise the instructor should demostrates the solutions. Some of the solutions a missing from this lecture notes.
```{attention}
At the moment, there are no detail explanations for each of the topics. But we expect the experienced instructor will be able to provide explanations using the topics and code snippets below.
Accidental errors have been removed, but intended errors have been kept.
After each excercise the instructor should demostrate the solutions. Some of the solutions a missing from this lecture notes.
```

````{note}
The list of commands below has been grouped arbitrarily for readability's sake.
Expand Down
58 changes: 29 additions & 29 deletions gitcodev/lesson2.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# LESSON 2: Branching and remote operations

This is a summary of the lecture notes for this lesson
This is a summary of the lecture notes for this lesson.
The original list of commands has been edited and decorated with headings corresponding to the [lessons in the curriculum](course-units) more clearly.
Some commands have been either removed or relocated or added for clarity and help self-study after the lesson.
Accidental errors have been removed, but intended errors have been kept.
Expand All @@ -20,44 +20,44 @@ The list of commands below has been grouped arbitrarily for readability's sake.
### 2.1.1 Create, rename, change and delete branches

```shell
git branch # new command
git branch B1 # new argument
git branch # verify
git status # verify
cat Lines.txt # verify
git branch # new command
git branch B1 # new argument
git branch # verify
git status # verify
cat Lines.txt # verify
```
```shell
git branch -m B1 B2 # new short option
git log --oneline # verify
git branch -d B2 # new short option
git log --oneline # verify
git branch -m master foo # known action
git branch -m B1 B2 # new short option
git log --oneline # verify
git branch -d B2 # new short option
git log --oneline # verify
git branch -m master foo # known action
```
```shell
git log --oneline # verify
git branch -d foo # known action (fails)
git branch -m foo main # known action
git branch # verify
git log --oneline # verify
git branch -d foo # known action (fails)
git branch -m foo main # known action
git branch # verify
```
```shell
git status # verify
git log --oneline # verify
git branch B1 # known action
git branch # verify
git log --oneline # verify
git status # verify
git log --oneline # verify
git branch B1 # known action
git branch # verify
git log --oneline # verify
```
```shell
git switch # new commmand (fails)
git switch B1 # new argument: on branch B1
git log --oneline # verify
git branch B2 # known action
git log --oneline # verify
git switch # new commmand (fails)
git switch B1 # new argument: on branch B1
git log --oneline # verify
git branch B2 # known action
git log --oneline # verify
```
```shell
git switch B2 # known action: on branch B2
git log --oneline # verify
git switch main # known action: on branch main
git log --oneline # verify
git switch B2 # known action: on branch B2
git log --oneline # verify
git switch main # known action: on branch main
git log --oneline # verify
```


Expand Down
Loading

0 comments on commit 56e14f3

Please sign in to comment.