updated 21 April 2022
Before GitHub, software development collaboration was not that simple. Every proposed change would be sent to email because there was no centralized space. Imagine if this would be a collaboration of more than a hundred developers working at the same time. That would be really hard.
It was the same thing when Microsoft Word would be used for collaboration for non-tech documents. There must be a local server so that one file could be changed simultaneously or through WebDAV. But Google Docs changed that way, it simplified the setup because it is web-based. GitHub has the same concept. It is a centralized space where the development actually happens.
Think of Google Docs with purely text and the version control is very comprehensive. That is GitHub. It is mainly for software development but since GitHub added its own features, it is not simply a centralized space for Git.
Codes are written in plain text but since other documents are plain text too, like classic novels, GitHub can be used for that purpose.
In order for other developers to ease collaboration through a centralized space, GitHub was developed. This was the very start of GitHub. Because of its practical use, just like YouTube, new users flocked every single day.
So using Git and collaborating with one another was brought to another level of ease. It is not just like you will be downloading the project, add your changes then send it through email and wait whether it will be approved. Using GitHub, it is already on one online space.
Now, the good thing about GitHub is that it can be used much like Google Docs to generate document files, provided it's purely text. Examples of pure text content are classic novels, law articles, and complex tutorials. Take note, even though it's pure text, Markdown can embed pictures and gifs to serve as visual aids.
GitHub is using Markdown for the README file. Markdown is a lightweight markup language so that you will not be writing using the pure HTML for your blogging site, for example. It's a simplified version so that you can focus on your content.
The essence of using GitHub just like Google Docs is that you are not confined with Google Docs or any other word processor. Text data can be read by any other machine that you will be using.
I covered the essence of creating written content compared to video presentations like a vlog:
https://github.com/jdevstatic/github-pages-tutorial
With this, while you are creating your digital content, every change will be counted as a commit, thereby making your GitHub profile a good one.
Since GitHub is also intended to be a social network for developers and non-developers, there are features like followers and discussion for a more interactive approach.
You will be surprised if I say up to now I did not install Git for GitHub. I am not using Git. And I am not saying you should not use Git. But GitHub can simply be used without Git to simplify your workflow.
In tech, there are so many tools for your different projects. Now, the catch is that you don't need to use them all. You should be using them when it is really needed. For example, a Java framework, like Spring Boot is an excellent one when it comes to software development. It is a shortcut actually. But you don't need to use it until you really need it. A simple project in Java will be too complicated if you will be using the Spring Boot. The same is also true for GitHub.
I also covered my simple content development workflow here:
https://github.com/jdevstatic/my-personal-content-dev-workflow
The very first time I encountered GitHub, I was prompted by these jargon terms:
commit
- it is a revision or
an individual change to a file
including word deletions or deleting
the file/s.
fork
- a copy of a repository. Changes can
be made without affecting the original
repository. A pull request should be
created so that changes can be merged.
A pull request can be simply not merged
in the main branch, it is the repo's
original author/s to decide.
GitHub Gist
- another feature of
GitHub. It is considered a lightweight
repo but still has all the features
for Git. It can be used as a mini-blogging
site, for others can actually comment
on your project or idea. It can
be used to share code snippets, just
like Pastebin.
GitHub Pages
- another add-on
for GitHub repo to be turned into a
static website. This has so many
applications like you can embed
the file on another site or be your
blogging site.
pull request
- a request for the author/s
of a repo to have the proposed change/s
be accepted in the main
branch.
repository
- think of it as a Google Drive folder
where your files reside.
There can be subfolders
for software development folder structure.
There is the README file
as the description of your project.
This is the
default page displayed once you visit
a repo. This is also your default page
when you deployed GitHub Pages from
the main
repository.
Check this out: https://github.com/jdevstatic/github-pages-tutorial
repository branch
- branches can
be made so that if ever author/s
wish to change something without
the fear of ruining the project,
it should be done in a branch.
for the complete list here is the link:
https://docs.github.com/en/github/getting-started-with-github/github-glossary
So what are you waiting for! Join GitHub, it's free.
https://github.com/join
Then create your very first repo by going to your profile
https://github.com/[yourusername]
then click Repositories
tab, then you'll see the
New
button
or
go to your dashboard
at the left side you will be seeing the Repositories
section click New
.
Also, to practice copying another repo,
if you are viewing this as a page, click
the button View On GitHub
button on top
and when you are already on GitHub,
at the upper right corner you'll
see Fork
button. Simply click it
and you will have the copy of this repo!
the complete steps are here: