Руководства

Что такое GitHub? Контроль версий для тех, кто не программирует

GitHub — сайт, который хранит код программных проектов вместе с их полной историей, поэтому вы видите каждое изменение, можете исправить ошибки и работать над одним проектом вместе с другими людьми. Он построен на Git — бесплатной программе, которая записывает снимки файлов проекта во времени. Git отвечает за историю; GitHub — это онлайн-место, где эта история хранится, копируется в резерв и обсуждается.

Если вы создаёте приложения с ИИ, GitHub нужен в основном для двух вещей: чтобы иметь собственную копию кода вне инструмента, в котором его создали, и чтобы передать код разработчику в формате, с которым он уже работает.

Почему это важно при создании приложений с ИИ

Конструктор приложений с ИИ пишет и меняет много кода очень быстро, и не каждое изменение — улучшение. Контроль версий помогает сохранять всё под контролем.

  • Откат без страха. Каждое сохранённое изменение — это снимок. Если ИИ что-то сломал, вы возвращаетесь к последней рабочей версии.
  • Владение. Код в вашем аккаунте GitHub остаётся вашим, если вы смените инструмент, перестанете за него платить или захотите второе мнение.
  • Работа с разработчиками. Почти все разработчики каждый день пользуются Git. Репозиторий позволяет им проверить, что написал ИИ, исправить это и вернуть изменения обратно.
  • Развёртывание в другом месте. Многие хостинги умеют развернуть приложение прямо из репозитория GitHub.

Бытовая аналогия: режим исправлений и общая папка

Представьте документ с включённым режимом исправлений, который лежит в общей папке.

  • Git — это режим исправлений: каждая правка записывается вместе с тем, кто её сделал, когда и почему, и можно вернуться к любой версии.
  • GitHub — это общая папка: документ лежит онлайн, другие могут получить копию, и есть место для комментариев и согласования.
  • Ветка — это как сохранить копию под названием «черновик — новый раздел с ценами», чтобы экспериментировать, не трогая версию, на которую все опираются. Если эксперимент удался, вы вливаете его обратно.

Отличие от документа — в масштабе. Приложение состоит из сотен файлов, и Git отслеживает их все вместе, поэтому снимок — это состояние всего проекта сразу.

Термины Git и GitHub, с которыми вы столкнётесь

ТерминПростое значение
Репозиторий (repo)Папка проекта с полной историей
Коммит (commit)Сохранённый снимок изменений с коротким описанием
Ветка (branch)Отдельная линия работы, чтобы эксперименты не мешали основной версии
mainОбычное название основной ветки — версии, которая выходит в работу
Слияние (merge)Перенос изменений из одной ветки в другую
Конфликт слиянияДва изменения затронули одни и те же строки; нужно выбрать, что оставить
Клонирование (clone)Загрузка полной копии репозитория вместе с историей
Push / pullОтправить свои коммиты на GitHub / получить чужие коммиты
Pull request (PR)Страница на GitHub с предложением слить ветку, где изменения проверяют и обсуждают
Форк (fork)Ваша собственная копия чужого репозитория на GitHub
IssueЗадача или отчёт об ошибке, привязанные к репозиторию
.gitignoreСписок файлов, которые Git никогда не должен записывать, например секреты в .env и загруженные зависимости
GitHub ActionsАвтоматизация, которая работает на GitHub, например тесты при каждом pull request

Два момента стоит подчеркнуть. Во-первых, история Git по замыслу постоянна: если пароль закоммичен и отправлен, удаление в следующем коммите не убирает его из истории. Во-вторых, коммит полезен ровно настолько, насколько понятно его сообщение. «Исправлено двойное списание, когда два человека бронируют одновременно» поможет вам потом; «обновление» — нет.

Пример: передаём приложение, созданное с ИИ, фрилансеру

Вы создали клиентский портал с помощью конструктора приложений с ИИ. Он работает, но вы хотите, чтобы фрилансер-разработчик добавил сложную интеграцию с вашей бухгалтерской программой.

  1. Подключите проект к новому приватному репозиторию GitHub и отправьте его. Теперь в репозитории лежат код и его история.
  2. Проверьте, что там лежит. Откройте репозиторий на GitHub. Там не должно быть файла .env и API-ключей в коде. Секреты хранятся в настройках платформы и при необходимости передаются фрилансеру отдельно — см. переменные окружения и секреты.
  3. Пригласите фрилансера как соавтора только в этот репозиторий.
  4. Он работает в ветке с названием вроде accounting-sync, делает коммиты по ходу дела и открывает pull request, когда закончит.
  5. Вы проверяете pull request. Даже без чтения кода вы можете прочитать описание, посмотреть, какие файлы изменились, и задать вопросы в комментариях.
  6. Сливаете изменения, когда всё устраивает, а затем подтягиваете (pull) их обратно в конструктор, чтобы вы и ИИ продолжали работу уже с новой версией.

На каждом шаге вы видите, что именно изменилось, и можете это отменить. В этом и вся ценность контроля версий в одном рабочем процессе. Если вы думаете, нужен ли вам разработчик вообще, см. нанять разработчика или создать приложение с ИИ.

Частые ошибки и заблуждения

  • «GitHub и Git — одно и то же». Git работает и без GitHub; есть и другие сервисы, например GitLab и Bitbucket, которые тоже хранят Git-репозитории.
  • «GitHub запустит моё приложение». GitHub хранит код. Запуск для публики — это веб-хостинг, отдельная услуга (хотя некоторые хостинги умеют разворачивать код из GitHub).
  • Коммит секретов. Самая разрушительная и самая частая ошибка. Используйте .gitignore для файлов .env и меняйте любой ключ, который когда-либо был отправлен в репозиторий.
  • Только одна ветка и никаких сообщений. Для одиночных экспериментов это сойдёт, но давайте коммитам понятные сообщения и используйте ветки для всего рискованного.
  • Правки в двух местах сразу. Если менять код и на GitHub, и в конструкторе ИИ без синхронизации между ними, возникнут конфликты. Выберите одно место для правок и синхронизируйтесь перед переключением.
  • Считать приватный репозиторий резервной копией всего. Там хранится код, а не содержимое базы данных или загруженные файлы. Им нужны собственные резервные копии.

Что попросить у конструктора ИИ

  • «Добавь .gitignore, который исключает .env, папки зависимостей и результаты сборки.»
  • «Напиши README: как установить приложение, какие переменные окружения нужны (только названия) и как его запустить.»
  • «Добавь .env.example со всеми названиями переменных и без настоящих значений.»
  • «Используй понятные описательные сообщения коммитов для каждого изменения.»

Эти четыре запроса дают репозиторий, который разработчик поймёт за несколько минут. Чтобы перенести приложение на свои серверы, см. как экспортировать приложение, созданное с ИИ, и развернуть его самостоятельно, а чтобы подготовить его к реальным пользователям, — как довести прототип с ИИ до продакшена.

GitHub и Mythex

Mythex сохраняет историю за вас на каждом тарифе: после каждого успешного хода агента создаётся контрольная точка — снимок Git, к которому можно вернуться. На тарифе Pro можно подключить GitHub и отправлять или загружать проект в свой репозиторий либо скачать весь проект архивом; секреты и установленные зависимости из экспорта исключаются. GitHub здесь нужен для синхронизации кода, а не для входа в Mythex. См. GitHub, экспорт и импорт в документации и страницу тарифов, где указано, что входит в каждый план.

Вопросы

В чём разница между Git и GitHub?

Git — бесплатная программа, которая записывает историю файлов проекта на любом компьютере. GitHub — сайт, принадлежащий Microsoft, который хранит Git-репозитории онлайн и добавляет инструменты для совместной работы: pull request, задачи (issues) и автоматизацию.

Нужен ли GitHub, чтобы создать приложение с помощью ИИ?

Нет. Многие конструкторы приложений с ИИ сохраняют историю внутри своего продукта. GitHub становится полезным, когда вы хотите иметь собственную копию кода, работать с разработчиком или разместить приложение в другом месте.

GitHub бесплатный?

У GitHub есть бесплатный тариф, который включает публичные и приватные репозитории; этого хватает большинству частных пользователей и небольших команд. Платные тарифы добавляют управление командой и дополнительные функции. Актуальные данные смотрите на странице цен GitHub.

Мой код виден всем на GitHub?

Только если вы сделали репозиторий публичным. Приватные репозитории видны только вам и людям, которых вы пригласили. Даже в приватном репозитории никогда не коммитьте пароли и API-ключи.

Mythex · Pricing · Создавайте что угодно с ИИ · Шаблоны сайтов и приложений · Сравнения Mythex · Глоссарий по созданию приложений с ИИ · Бесплатные инструменты для создания приложений с ИИ · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)