Skip to content

Computational-Imaging-LAB/mipa-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Git and GitHub Tutorial

Welcome to the Git and GitHub tutorial for the Medical Image Processing Analysis (MIPA) course created by the Computational Imaging Lab (CIL). This README provides an overview of the tutorial structure, Git workflows, and assignment requirements.

Overview of Tutorial Materials

This tutorial consists of several components that work together to provide a comprehensive learning experience:

Key Components

  • index.html: The main landing page that provides navigation to all tutorial materials, examples, and assignments. This is your starting point for accessing all content.

  • notebook.html: Contains the core instructional content with Git and GitHub examples, commands, explanations, and assignments. The notebook is structured sequentially from basic concepts to more advanced topics, with interactive examples that you can follow along with.

  • workflow.html: Demonstrates complete Git workflows, showing how different commands and techniques connect in real-world collaborative development scenarios.

Git and GitHub Concepts

This tutorial covers the following key concepts:

  1. Version Control Basics: Understanding the purpose and benefits of version control
  2. Git Fundamentals: Repositories, commits, branches, and the staging area
  3. Local Git Operations: init, add, commit, log, diff, and branch management
  4. Remote Repository Usage: clone, push, pull, fetch, and remote management
  5. Collaborative Workflows: Pull requests, code reviews, and resolving merge conflicts
  6. Advanced Git Techniques: Rebasing, cherry-picking, and managing large repositories

Tutorial Structure

The tutorial is designed to progressively build your knowledge and skills in Git and GitHub:

  1. Fundamentals: Setting up Git, basic commands, and repository management
  2. Branching and Merging: Creating branches, merging changes, and resolving conflicts
  3. Collaboration Techniques: Working with remotes, pull requests, and code reviews
  4. Advanced Workflows: Git workflows for different team sizes and project types

Assignment Information

Examples & Assignments

  • Examples 1-6 in the notebook.html are for learning and practice purposes
  • Examples 7 and beyond are assignments that you must complete and submit
  • Each assignment builds upon concepts from earlier sections
  • Assignments simulate real-world collaboration scenarios you'll encounter in research or development teams

Challenges

  • Challenge sections are optional but highly recommended for deepening your understanding
  • Completing challenges will enhance your skills and prepare you for more advanced work
  • Solutions to challenges are not provided, encouraging creative problem-solving
  • Challenges often involve resolving complex merge conflicts or implementing advanced Git workflows

Submission Requirements

For each assignment, you must:

  1. Create a GitHub repository as specified in the notebook.html instructions
  2. Implement your solution following the requirements provided
  3. Make your repository public so instructors can access your work
  4. Submit the link to your repository through the Moodle submission system

Important Notes

  • Your commit history should demonstrate proper Git practices learned in the tutorial
  • Include a brief README in your assignment repository explaining your implementation
  • Ensure your repository structure follows the guidelines provided

Getting Started

  1. Begin by opening the index.html file
  2. Follow the tutorial sections in the recommended order
  3. Complete the practice examples before attempting assignments
  4. Refer back to previous sections as needed for reference

Learning Outcomes

After completing this tutorial, you will be able to:

  • Set up and manage Git repositories locally and on GitHub
  • Implement effective branching strategies for different project needs
  • Collaborate effectively using pull requests and code reviews
  • Resolve merge conflicts with confidence
  • Understand and apply advanced Git workflows used in professional development teams
  • Leverage Git and GitHub for both individual and team projects

Support

If you encounter any issues or have questions about the tutorial materials:

  • Write into issues of this repository
  • Attend scheduled office hours
  • Email the teaching assistants with specific technical questions

abdullah.bas@std.bogazici.edu.tr


This tutorial is maintained by the Computational Imaging Lab (CIL) for the MIPA course. Last updated: 2025.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages