0% found this document useful (0 votes)
43 views4 pages

Open Source CW 2025

The document provides an overview of Open Source, explaining its definition and importance in software development, along with key terminologies such as repository, commit, and pull request. It introduces Version Control Systems, particularly Git and GitHub, as essential tools for collaboration and project management in coding. Additionally, it encourages participation in Open Source projects and highlights resources for learning and contributing effectively.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views4 pages

Open Source CW 2025

The document provides an overview of Open Source, explaining its definition and importance in software development, along with key terminologies such as repository, commit, and pull request. It introduces Version Control Systems, particularly Git and GitHub, as essential tools for collaboration and project management in coding. Additionally, it encourages participation in Open Source projects and highlights resources for learning and contributing effectively.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Coding Club Coding Week 25

IIT Guwahati

OPen
Source
Resources Released
Open Source Resources

What is Open Source ?


If we go by the book then, “Open Source is source code that is made freely available for possible
modification and redistribution. Products include permission to use and view the source code,
design documents, or content of the product. The open source model is a decentralised
software development model that encourages open collaboration.”

A layman example would be :



Consider you have a recipe for making a cake. Now you post it on the internet, and people can
bake the same cake but also add their own twists, like adding strawberries or nuts, or suggest
some changes to your recipe, or share their own recipe inspired by yours. Just replace ‘recipe’
with a ‘software’, a ‘program’, or a ‘plugin’, and you get the gist of Open Source.



You can watch the following video to get an idea about Open Source :

Getting Started with Open Source

Version Control System and Git


A Version Control System (VCS) is a tool that helps track and manage changes to files over
time, especially in software development. It allows multiple people to work on the same project
without overwriting each other’s work. Every time a change is made, the VCS records what
was changed, who made the change, and when it was made. This way, if something breaks or
needs to be undone, you can easily go back to a previous version. It also helps in collaborating
efficiently, reviewing code, and maintaining a history of the entire project.

You all might have heard of Git right ? Git is a VCS itself. It helps working on different branches
(we will get to that later) and collaborate while keeping a local history on your computer.

GitHub, on the other hand, is a website (a cloud platform) where you can store your Git
repositories online. While Git is the tool, GitHub is the platform where your Git-managed code
lives and can be accessed by others.

Think of Git as your personal notebook where you track your work, and GitHub as a shared online
folder where you and your teammates can contribute and see each other’s updates.

This is the complete tutorial on Git and GitHub


Complete Git and GitHub Tutorial

For those who prefer reading :


Git and GitHub crash course
Git Crash Course: A Simple Workflow for Small Teams and Startups
Open Source Resources

Terminologies in Open Source sphere


Repository (Repo): A storage space for your project’s code, usually hosted on platforms like
GitHub or GitLab

Commit: A snapshot of changes made to the code, along with a message describing what
was done

Branch: A separate line of development that lets you work on features or fixes without
affecting the main project

Fork: A personal copy of someone else's repository that you can freely modify

Pull Request (PR): A request to merge your changes (from your branch or fork) into the
original repository

Issue: A place to report bugs, request features, or discuss project-related topics

Merge: Combining changes from one branch into another, usually after review

Maintainer: A person who oversees the project, reviews contributions, and manages
releases

README: A file that introduces and explains the project—how to use it, install it, and
contribute

Clone: Downloading a repository from a remote server (like GitHub) to your local machine

Contributor: Anyone who contributes to the project, by writing code, documentation, or


helping in any way.

Why are these important ? These terminologies are important because when you contribute to
any open source repository, you need to be familiar with these methods and practices. They
help maintainers uphold industry-standard code and formalise the practice of open source,
where you often don’t communicate directly with a person, but instead follow structured
workflows. By understanding these terms, you can streamline your contributions and
collaborate more effectively.



There are some more techniques like Merging, Rebasing and Squashing
Git Merge vs Rebas
Should you squash PR on GitHub ?
Open Source Resources

Github Actions

This is for those who want to do something extra :) Github Action is a CI/CD platform which
helps in automating tests, builds, and deployment. Though the main purpose of GitHub action is
for CI/CD, it is not just limited to it. Here is the material to learn GitHub action

GitHub Actions Documentation - GitHub Doc


GitHub Actions - Youtube Videos


Motivation for Open Source

Open source gives you a real sense of what it means to be a software engineer. You connect
with people who share the same passion for a language or program through meaningful work. In
addition, there are various prestigious events like Google Summer of Code (GSoC),
Hacktoberfest, Outreachy, and many more. Contributing to any of these is a highly rewarding
experience and often becomes a standout highlight of your tech career

What Next ?


Starting in open source is indeed an exciting journey! Finding the right repository to contribute
to, learning the necessary stack or library, and successfully solving an issue can be incredibly
rewarding. Each commit feels like a small victory and drives you to contribute more. A great
place to begin is by looking for "good first issues" on GitHub, as these are typically well-suited
for beginners. A beginner friendly guide

Guide to Open Sourc


First Contribution to Open Source

Although Open Source does not have a dedicated task, but during the tasks as well as
interviews of other modules, we expect you to be well verse with basic features of Git and
GitHub. Along with that, this guide will be helpful to you guys post recruitment as well :)

Join the WhatsApp Group


Have any doubts ?

Contact us
Coding Club
Toshit Jain +91 -6354642173 IIT Guwahati

You might also like