Week 2
Version Control, Collaboration & Reproducible Workflows
Introduction
This week we move from writing code individually to managing and collaborating on code. We introduce Git, GitHub, branching, and basic principles for making data and code more reproducible.
Learning goals
Understand the fundamentals of Git and GitHub
Create and manage a GitHub repository
Understand commits, issues, branches, and merge conflicts
Apply naming conventions and FAIR data principles
Lecture - Version Control Systems & Integration
Introduction to Git and GitHub, repository structure, commits, and collaborative workflows.
Lab - Broken Online, Merge Conflicts & Branching
Hands-on practice with the Octocat for GitHub workflows, resolving merge conflicts, creating branches, and merging changes.
Discussion - Naming Conventions & FAIR Principles
Why do consistent naming and data management practices matter?
Introduction to file and variable naming conventions and the FAIR principles: Findable, Accessible, Interoperable, and Reusable.
Assignment
Part 1: GitHub Education 1. Create a GitHub profile. 2. Create a public repository. 3. Share the repository through Canvas.
Part 2: GitHub and Branching 1. Connect to the assigned repository. 2. Create a branch. 3. Create a merge conflict. 4. Try to merge the branch. 5. Resolve the merge conflict and complete the merge.
Looking ahead
Next week we will move from managing code to working with cloud computing, APIs, and agricultural data infrastructure.
Back to course schedule ⏎