What is Github really for?

Asked

Viewed 1,599 times

4

I see many people talking about it, but I don’t know the real importance of Github.

  • Your question is about the github in particular or involves something with the git also?

  • It’s because I don’t know anything about him,

2 answers

13


Github is a website and service that provides GIT free and paid and has WEB management interface, without needing to install a GIT client.

To understand Github you need to understand the service they provide and in this case the service is the Git.

Git is a distributed version control system and a source code management system, they are like "protocols" to work with repositories, similar to SVN.

Software development contains many steps and it is usually necessary to have a history of what has been done and be able to reverse.

And to manage a git you’ll need a client for this, we usually use git via the command line, which can be found at:

But for ease there are those with graphical interface:

Among many others in: https://git-scm.com/downloads/guis

Think you have a big project and something started to fail in the last modification, you can look code by code until you find out where it failed, or simply search the last history of Git and see exactly what you’ve changed through the diff

Another goal of using Git is to work with multiple programmers, you will be able to merge modifications manage the branchs and know exactly what the other did, remotely too.

Of course, many developers out there work with Git in a way that can be tricky, because usually everyone is has absolute control over the "master", so all commits get mixed up and by leaps and bounds people are using Git, when often the ideal would be to have someone who was the main controller, the one who approves and compares things, but this is something broader to talk about and/or explain.


Github and the open-source

The @Jefferson reminded me of a detail, although it has nothing to do with the question, it is interesting to say that Github is quite popular due to open-source projects and the link with other tools/services like:

  • packagist for composer
  • Myget (can integrate github with nuget, npm, etc)

There are many software we use today such as Angular, Vue, jQuery, Laravel, etc that are versioned in Github, that is, the source is there and the modifications, corrections, history and some distributions (in the tab Release) are also made by Github.


Github is not the only one that provides GIT

Github is not the only site that provides free GIT, example as well:

  • Gitlab - Note: has unlimited private repositories
  • Bitbucket - Note: has unlimited private repositories, but only allows 5 users
  • sourceforge - Note: provides Git, SVN, Media and Bazaar

In addition to the GIT versioning system there are others like:

  • 1

    thank you very much, took away all my doubts

  • 2

    I should point out two things to the reader of this answer: (1) Github has a very strong and cool social footprint; it allows you to follow people and repositories, it has a Facebook-like feed (but only people/project activities, no gossip). (2) Gitlab allows you to have closed repositories for free, infinite of them, whereas Github only offers this in paid version.

  • William, taking advantage of the tram of the question, whether the main objective of Github is the Git, wouldn’t it be better to take backups? Then you will have the files to recover in case there is any modification that might harm you. No?

  • @Thiago what backup? Do you know how the git-client works? It downloads copies to your computer and through history can do rollback, no need to backup

0

To understand the importance of Github, you need to understand the importance of a version control system.

version control is a system that records changes made to a file or a set of files over time so that you can recover specific versions.

Do not attach the concept of version control to the source code. It is very useful among programmers, however I could write a poem or create a graphic art with the help of a version control system.

Github is a web platform lodging code (or anything else, such as poems) that uses the Git as version control system.

The great importance of Github is open source and contribution. There you can host your Git-controlled project and several people can contribute to your project. Some notorious projects that follow this model:

Github re-shaped what we know today about contribution and open source with the web model and using Git.

Learning Git before learning Github is essential. But how do you learn Github? Github has some workflows besides Git. The concepts of pull requests, code Reviews, issues and others are unique to Github and go beyond Git.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.