After working and reading the introduction on Git/GitHub. I furthered my learning and understanding on how Git and GitHub is used in Software Development. The fundamental components in Git include commits, branches, and merges. Commits are snapshots of changes made to the codebase. Each commit is saved with a unique ID, which allows developers to reference specific points in the project’s history. Branches are separate workspaces within the code where developers can experiment or implement features without affecting the main codebase. When the branches are ready, it can be merged into the primary branch, allowing for controlled integration of new features or changes. One of my favorite things about git is that it is flexible to let developers revert to earlier versions of the project, which can be invaluable when debugging or backtracking.
We can use Git with a service called GitHub. This is a cloud-based platform specifically designed for Git repositories. It hosts Git repositories so that developers can share code, collaborate on projects, and contribute to various repositories. GitHub enhances Git’s capabilities by adding tools for project management, code review, and issue tracking. This makes it easier for teams to coordinate their work and keep track of changes, suggestions, and bug fixes in a more organized manner. We use a similar platform for class which is Gitlab and it shares very similar features to GitHub.
I also learned pull requests. A pull request is a way for developers to propose changes to a project. It allows contributors to submit their code changes to be reviewed. Pull requests provide a structured workflow for collaboration, where team members can review code, give feedback, and discuss improvements. This process fosters a collaborative development environment where team members can ensure quality and consistency across the project. Developers around the world share their projects on GitHub, allowing others to contribute, learn, and build upon existing work. Many open-source libraries and frameworks, such as React or Linux, etc… are hosted on GitHub, making it a go-to platform for sharing projects.
After writing this blog, I now know that Git is a version control system that enables tracking and managing changes in code, while GitHub is a platform that hosts Git repositories and offers tools for collaboration, making it easier for developers to work together on projects. Together, Git and GitHub create a powerful combination for managing code in both professional and personal projects, collaboration and building a community of developers.
Resources:
From the blog CS@Worcester – function & form by Nathan Bui and used with permission of the author. All other rights reserved by the author.
