Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Proposal]: 1-day collaborative version control with git and GitHub #199

Open
3 of 4 tasks
svenvanderburg opened this issue Nov 14, 2024 · 4 comments
Open
3 of 4 tasks
Assignees
Labels
share-existing-material Existing material to share with The Carpentries community

Comments

@svenvanderburg
Copy link

svenvanderburg commented Nov 14, 2024

1. Lesson Topic

Collaborative version control with git and GitHub

2. Lesson Language

English

3. Draft materials

https://esciencecenter-digital-skills.github.io/git-lesson/

4. Requirements for existing materials

5. New repository creation

  • I need a new repository created

6. Transfer existing repository

  • my lesson meets both criteria in part 4 and I would like to transfer the repository to The Carpentries Incubator

7. Collaborators

@svenvanderburg @sjvrijn @lyashevska

8. Info/Questions

This is basically a merge of a stripped down much quicker and lighter to teach version of https://github.com/swcarpentry/git-novice together with some parts of https://coderefinery.github.io/git-collaborative/ and slides to introduce concepts: https://esciencecenter-digital-skills.github.io/digital-skills-slides/modules/git-lesson/git-slides

The goal is to teach participants how to collaborate with git and GitHub in one day. We teach this about 6 times a year at the eScience center, therefore we took the effort and put some bits and pieces together. Often we also add a 2nd day with this lesson: https://esciencecenter-digital-skills.github.io/good-practices-lesson/

We think it would be useful to share with the community even though there is substantial overlap with other lessons.

Syllabus:
Introduction to version control with Git

  • What is version control and why should I use it?
  • Setting up Git locally
  • Creating a Git repository
  • Tracking changes: git status, git add & git commit
  • Exploring history: identify and recover old versions of files
  • Ignoring things with .gitignore files
  • Remote repositories in GitHub

Collaboration with Git and Github

  • Submitting changes through pull requests in Github
  • The peer review process
  • Good practices for collaboration: using issues and the git workflow
  • Contributing to repositories as external contributor through forks
@tobyhodges
Copy link
Member

Thanks @svenvanderburg, I would be happy to host the lesson in the Incubator, as I agree that it may be a useful resource for others as an extension of existing Git lessons.

I will set up a maintainer team for the lesson, so that you can transfer the repository. What would you like me to call that team? collaborative-git-maintainers? I would like to use a name that is more descriptive than git-maintainers...

Finally, pinging @sstevens2 as she might want to review and compare to her own extended Git lesson.

@tobyhodges tobyhodges added the share-existing-material Existing material to share with The Carpentries community label Nov 19, 2024
@svenvanderburg
Copy link
Author

svenvanderburg commented Nov 19, 2024

Great @tobyhodges! collaborative-git-maintainers works if that is distinctive enough from other existing teams. Curious what you think @sstevens2 !

@tobyhodges
Copy link
Member

Thank you @svenvanderburg.

You should have received an invitation to join a Team of maintainers for the lesson, as part of the carpentries-incubator organization on GitHub. After you have accepted that invitation, you should be able to initiate the transfer into carpentries-incubator, via the repository Settings. When that is done, I will make sure that you retain the appropriate level of access to the repository: you will be given full administrative rights, and the collaborators you listed above will be given "Maintain" privileges.

To keep in touch with The Carpentries curriculum community you may find it useful to join the incubator-developers list on The Carpentries TopicBox and/or the lesson-dev channel on The Carpentries Slack. Joining the Slack channel requires that you first become a member of that workspace.

I will leave this issue open until the transfer has been completed. If you have any questions about the process, or if you run into any trouble, please post back here and I will be happy to help you.

@tobyhodges
Copy link
Member

Also, @svenvanderburg please change the name of the repository after you make the transfer, so that it too is more descriptive than git-lesson

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
share-existing-material Existing material to share with The Carpentries community
Projects
None yet
Development

No branches or pull requests

2 participants