I’m Brian, The programme Director here at
Code Institute. Today we’re going to talk about Github. Don't forget to like, follow, share and subscribe. GitHub is the number 1 software repository
hosting platform where more than 73 million software developers come together to store,
manage and contribute to their own and others’ projects and their associated digital documents. While GitHub and its competitors are primarily
used for hosting project code developed in various programming languages, these tools
can be used to save and collaborate on almost any digital document. But today, we’ll focus on how github is
used to work with software projects You may not be familiar with GitHub, but you’ll
quickly become very comfortable using this fantastic resource once you embark on your
journey into software development. So, what is GitHub used for? GitHub allows people to store their work,
as well as collaborate with others. The platform facilitates the interaction of
people who can view, contribute, and share each other’s work. They can discuss and fix errors as well as
repurposing existing solutions for other projects when building their own. Now, source code that runs from start to finish
doing what it was designed to do is ideal. And that's what GitHub attempts to assist. It provides us with an environment that encourages
the improvement of code. It also provides a system with which coders
can keep track of the changes made during the coding process. Sometimes it can be challenging to grasp the
labour involved, the number of hours needed to string together often millions of lines
of code. Even the most basic App requires excellent
attention to detail, or it will fail to operate. Sometimes a second set of eyes, or even a
helping hand, is needed, be they from a colleague or an external collaborator. GitHub facilitates those extra pairs of eyes. Now, what does GitHub mean? For its users, GitHub means many things. For some, it’s a code-sharing and publishing
resource. It's also a networking site where developers
can work together. But it is a lot more than this too. Having started as a developer’s collaborative
platform, GitHub is now the most significant cloud-based storage space for software projects
that exist on the planet. With Twitter, you communicate by sharing tweets. On Facebook, you communicate by sharing cat
videos. You communicate by sharing photographs of
food on Instagram. And with GitHub, you communicate by sharing
code and other artefacts that go into creating a software project. GitHub allows programmers to duplicate code
from a project and safely work on it without changing the code within the original project. In other words, you can continue to develop
an application with it without affecting other work being done. And when you are finished working on your
copy, it is reviewed, and if there are no breaking changes, your code will be merged
with the original source code, thus contributing to the overall functionality of the project. As the name suggests, GitHub can be divided
into Git part and the Hub part. Let’s talk about Git first
Git is an open-source version control system that lets developers manage changes to a software
project’s code. Version control is essential when working
on software projects. It is the system used in managing any changes
to documents, computer programs, large websites and other collections of information. Without version control in place, it’s a
case of when, not if, you will lose your changes and possibly entire files. While Git revolutionized version control,
GitHub gave us a staging platform that let developers build and share prototypes, collaborate
on projects, edit and contribute to each other's code, and give project stakeholders a chance
to view in-progress work. The Hub part is not nearly as difficult to
grasp. It is a community of like-minded individuals
who participate in working on code and solutions together. These collaborations can be private or public. It is all about the collaborative effort:
from small in-house development teams to global communities working on massively scaled projects. Collaborators come together to create, review
and improve code, as well as deriving new ideas and helpful solutions from the uploaded
project repositories. Often, it can be intimidating to introduce
yourself to a community of strangers, let alone strangers with technical knowledge that
might far surpass your own. GitHub can relieve some of these fears because
a collaborative attitude and mindset is fostered due to the structures and process that are
built into the hub. So, how do we use GitHub
Using GitHub is relatively straightforward – however, of course, it helps if you’re
a software developer. Let's look at how you sign up. Before using GitHub, you need to sign up for
an account. A basic account is free, but there are also
paid-for Team and Enterprise versions. Because GitHub runs on Git, you will generally
want to download Git onto your computer. It then needs to be installed and configured. If you want to put a project live on GitHub,
you will have to create a repository. This is where your project will live. To create a repository, click on the “+”
dropdown menu and follow the instructions. GitHub offers an intuitive web-based interface
that includes issue tracking, wikis, REST APIs, and rich GUI and command-line tools
for Windows, Mac, Linux and even mobile devices. You can create and build a profile, and upload
projects (known as repositories) in order to share and connect with others by “following”
their accounts. And while many users store programs and code
projects, nothing is preventing you from keeping text documents or other file types in your
project folders. GitHub encourages users to create a repository
to place their current work for others to view or indeed edit or correct. On GitHub, you can Star, Watch, and Fork,
but what are they? Forking lets you safely make a copy of someone
else’s project and working on it yourself without affecting the original. Watching gives you updates when changes are
made to a project you’re following. Starring is GitHub’s version of the “Like”
button on Facebook. It’s a voting system that enables developers
to vouch for projects they think are excellent. Apart from benefitting from the features we
just covered, there are other benefits for developers who use this platform. For example, GitHub Pages. Github pages allow you to showcase your portfolio
of work on elegant websites. These sites are fully html compliant and can
be customized as you see fit. You can also apply free and paid themes to
get you up and running quickly with GitHub pages. Our students at Code Institute use GitHub
pages to showcase their front-end projects and embed links to the source code so that
others can see what the work looks like and how it was made all in one location. This is a great feature. Now, if you're coming to the world of software
development for the very first time, some of what we've just covered might sound a bit
obscure or technical. So, if you've never experienced coding before,
then try Code Institute's free 5 Day Coding Challenge. Here, you will learn some of the basics needed
for software development, including HTML, CSS and JavaScript. After one hour a day over five days, you'll
have built your very first webpage or frontend application. So, register now through the link in the description
below.