Что такое Git и что такое GitHub
Git и GitHub не синонимы: Git работает локально, а GitHub предоставляет сетевой сервис поверх репозитория.
Предыдущий раздел показал, что будет делать SafeSort. Прежде чем писать код, разберёмся с инструментами, вокруг которых построена вся оставшаяся часть главы, и с четырьмя похожими словами, которые легко перепутать. Git и GitHub: разные продукты, а не два имени одной и той же вещи.
| Понятие | Что это |
|---|---|
| Python-проект | исходный код и файлы SafeSort на диске, с которыми мы работаем |
| Git-репозиторий | история изменений этих файлов, хранящаяся в скрытом каталоге .git |
| GitHub-репозиторий | Git-репозиторий на сервере GitHub вместе с веб-интерфейсом |
| GitHub Project | отдельный инструмент планирования: Issues, доска и представления |
Git работает полностью локально на вашем компьютере и хранит историю изменений файлов. Ему не нужны ни аккаунт GitHub, ни интернет, ни удалённый репозиторий. Можно установить Git, создать репозиторий, сделать сто коммитов и ни разу не подключиться к сети. GitHub работает как отдельный интернет-сервис поверх Git: он хранит удалённую копию репозитория и добавляет то, чего у самого Git нет: Issues, Pull Request, Projects, Actions и Releases. GitHub построен вокруг Git, но обратной зависимости нет: Git прекрасно работает без GitHub, а вот GitHub без Git, напротив, работать не может. Этот сервис хранит и обслуживает Git-репозитории.
Официальные ресурсы Git
У проекта Git есть собственный сайт, справочник и учебная книга. Они отвечают на разные вопросы, поэтому полезно сразу знать, куда идти за установщиком, точным синтаксисом команды или цельным объяснением идеи.
| Ресурс | Для чего он нужен |
|---|---|
| Официальный сайт Git | Загрузки Git, сведения о проекте и ссылки на учебные материалы. |
| Справочная документация Git | Точное описание отдельных команд: git init, git clone, git add, git commit, git branch, git switch, git fetch, git pull и git push. |
| Книга Pro Git | Последовательное объяснение модели Git. Это учебная книга, а не только перечень параметров команд. |
| Git Source Code Mirror on GitHub | Зеркало исходного кода Git на GitHub. Сам Git не зависит от GitHub: размещение зеркала показывает, что Git и GitHub остаются разными системами. |
Логотип Git
Цветной знак на этой странице взят из официального набора Git без перерисовки и изменения цвета. Git Logo by Jason Long, лицензия CC BY 3.0.
Коротко
- Git работает локально и следит за историей файлов; ему не нужен интернет.
- GitHub предоставляет удалённую копию репозитория и инструменты Issues, Pull Request, Projects, Actions и Releases.
- Репозиторий хранит код и историю, а GitHub Project служит для планирования. Это независимые понятия.