Sharing information on technology from Python and computer science to the Internet and World Wide Web


About
GitHub Profile
Contact

This site runs on GitHub Pages
©2023 Sherrie L. Fuqua

Demystifying Git, GitHub, and GitHub Pages

December 29, 2022

The ‘gitverse’ is like a great library, and like a great library it holds the books we want to read as well as the process for organizing them, and the shelves to keep them stored on. Git, GitHub, and GitHub Pages make up just three parts of the gitverse, and the gitverse is a little like a library.

Photo by j zamora on Unsplash

I use all three of these components today but when I first began with git about ten years ago, I did not completely understand this new and strange place. These three pieces of GitHub are separate but closely related because they work together but have different functions. They all grew out of ‘git’, a solution to a growing problem when it was first created.

Linus Torvalds, the developer of Linux, wrote the program git in 2005 to manage the development and evolution of the Linux kernel, as it grew to be collaborated on by more and more developers. The previous solution for managing this collaboration, BitKeeper, was no longer workable, so Torvalds began a new project to replace it and called it ‘git.’

git

The git paradigm is made of a server (i.e., an application running on a computer that serves information that other applications can access) which holds the code or documentation that some application needs, like your email client and the email that it receives and shows you. With git, everyone that needs to can access it, edit it, and improve it, without creating conflicts. A local version (called a client) also runs on the computers of the people that want to contribute to the project. The git client negotiates with the git server, to keep everything in order. Git also provides version control, which means that a writer or developer can go back to earlier versions if and when needed.

Git allows multiple developers to work on a project from anywhere, and keep their changes organized and synced. Git is a distributed version control system, or DVCS, and that is all that ‘git’ itself is. The git code is open source and free for download from a variety of places on the Web, just Google “git download” with your client or server platform.

GitHub

GitHub is an Internet Website at https://github.com/ that provides storage space plans (the basic one being free) that holds code and documentation for individuals and organizations. Each project has its own space and is called a repository. GitHub is a mega-repository for code and files that can be accessed by many people in collaboration. For example, the code for the application called VS Code by Microsoft lives and is developed on GitHub.

The idea of git, and then GitHub, is for developers to be able to work in teams, but not necessarily in the same physical place, allowing them to work together on repositories of code for applications and development projects (way before the Covid shutdown).

GitHub uses the functionality of git’s servers and clients to keep changes by many contributors organized effectively, and to store the main copy of the code.

GitHub Pages

GitHub Pages is a free additional option for anyone with a GitHub account, to have one publicly accessible Website. Your Website address is automatically https://your-user-name.github.io/ but GitHub Pages will also accommodate custom domains for free (you have to buy the domain).

For more information at GitHub Pages see my article, Using a Custom Domain On GitHub Pages, or visit GitHub’s Quickstart pages.