ファイルのバージョン管理を行うために様々なプロジェクトで使われているツールです。
ファイルの変更を追い記録したポイントにいつでも戻すことが可能なシステムで、こういったシステムをバージョン管理システムと呼びます。
最も簡単なバージョン管理の方法としてファイルをコピーしてバックアップを取り続ける方法があります。 それでもファイル名を工夫することでバージョンを表すことができますがファイル名に一貫性を持たせる必要があったり、変更を把握することが難しくなります。
しかしバージョン管理システムを用いることで一貫性を持たせることが可能になり、作業者が複数人いても容易に管理する事ができます。
gitはバージョン管理ツール自体のことを指しますがgithubはgitを利用したwebサービスのことです。
Githubがあることでインターネット上での共同作業がスムーズに進めることができます。