Команда git push завершается ошибкой «repository not found» чаще всего не из-за сломанного Git, а потому что репозиторий на GitHub ещё не создан, либо локальный проект не привязан к удалённому адресу. Прежде чем разбираться с ошибками, стоит пройти весь путь загрузки проекта по шагам — от установки Git до первой успешной отправки коммитов.
В этой статье разберём несколько способов выгрузить код на GitHub: через командную строку, через GitHub Desktop и прямым перетаскиванием файлов в браузере. Каждый метод подходит под свою ситуацию — от разовой публикации небольшого проекта до регулярной работы с версионированием.
Что понадобится перед выгрузкой
Для загрузки проекта на GitHub необходимы три вещи: аккаунт на сайте, установленный Git на компьютере и сам проект в локальной папке. Регистрация на GitHub бесплатна и занимает пару минут — достаточно указать email и придумать имя пользователя.
Проверить, установлен ли Git, можно командой в терминале:
git --version
Если в ответ отображается номер версии — всё готово. Если система пишет, что команда не найдена, скачайте установщик с официального сайта git-scm.com и установите с параметрами по умолчанию.
- 🖥️ Аккаунт на GitHub с подтверждённым email
- ⚙️ Установленный Git любой актуальной версии
- 📁 Папка с проектом, который нужно выгрузить
- 🔑 Настроенная авторизация (токен или SSH-ключ)
Шаг 1. Создание репозитория на GitHub
Репозиторий — это хранилище проекта на серверах GitHub. Чтобы его создать, нажмите кнопку New на главной странице после входа в аккаунт или зайдите на страницу создания через меню профиля. Откроется форма с настройками.
Укажите имя репозитория — оно станет частью ссылки на проект. Выберите видимость: Public (доступен всем) или Private (только вам и приглашённым). Поле описания можно оставить пустым.
⚠️ Внимание: при создании репозитория не ставьте галочки «Add a README file», «Add .gitignore» и «Choose a license», если планируете загружать уже существующий локальный проект. Иначе удалённый репозиторий получит свои коммиты, и первая команда push завершится конфликтом историй.
Шаг 2. Инициализация Git в папке проекта
Откройте терминал (в Windows — Git Bash или командную строку) и перейдите в папку проекта командой cd путь/к/папке. Затем выполните инициализацию:
git init
Эта команда создаёт скрытую папку .git, в которой хранится вся история изменений. Далее добавьте файлы в индекс и создайте первый коммит:
git add .
git commit -m "Первый коммит"
Команда git add . помечает все файлы текущей папки для сохранения, а commit фиксирует их состояние с комментарием. Без коммита отправлять на сервер будет нечего.
☑️ Проверка перед первой отправкой
Шаг 3. Привязка к удалённому репозиторию и отправка
Теперь нужно связать локальную папку с созданным репозиторием. Скопируйте URL репозитория со страницы GitHub (кнопка Code) и выполните:
git remote add origin https://github.com/имя/репозиторий.git
git branch -M main
git push -u origin main
Первая команда задаёт адрес удалённого репозитория под именем origin. Вторая переименовывает основную ветку в main — это стандартное имя на GitHub. Третья отправляет коммиты и привязывает локальную ветку к удалённой, чтобы в дальнейшем хватало просто git push.
Если всё прошло успешно, обновите страницу репозитория в браузере — файлы проекта появятся в списке.
Авторизация: почему пароль не работает
Частая проблема при первом git push — GitHub запрашивает логин и пароль, но ввод пароля от аккаунта завершается ошибкой. Дело в том, что GitHub не принимает пароль аккаунта для операций через HTTPS — вместо него нужен персональный токен доступа.
Токен создаётся в настройках аккаунта: Settings → Developer settings → Personal access tokens. Сгенерированный токен показывается один раз — сохраните его. При запросе пароля в терминале вставляйте именно токен.
Альтернатива — SSH-ключи. Они настраиваются один раз, и дальше авторизация происходит автоматически без ввода чего-либо. Это удобнее при регулярной работе, но требует генерации пары ключей и добавления публичного ключа в настройки GitHub.
Как создать Personal Access Token
Откройте github.com → Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token. Задайте имя, срок действия и отметьте область repo. Скопируйте токен сразу — повторно он не отображается.
Альтернативные способы загрузки
Командная строка — не единственный вариант. Для тех, кто предпочитает графический интерфейс, есть два рабочих пути.
GitHub Desktop — официальное приложение для Windows и macOS. После входа в аккаунт оно позволяет добавить локальную папку через File → Add local repository, сделать коммит кнопкой и опубликовать проект одним нажатием Publish repository. Все команды Git выполняются «под капотом».
Загрузка через браузер — на странице репозитория есть кнопка Add file → Upload files. Файлы можно перетащить мышью прямо в окно. Способ подходит для небольших проектов, но имеет ограничения по размеру и количеству файлов за одну загрузку.
| Способ | Сложность | Когда подходит |
|---|---|---|
| Командная строка (git push) | Средняя | Регулярная работа с версиями |
| GitHub Desktop | Низкая | Новички, визуальный контроль |
| Загрузка через браузер | Минимальная | Разовая публикация файлов |
| Интеграция в IDE | Низкая | Работа прямо из редактора кода |
Типичные ошибки и их решение
Разберём ошибки, с которыми чаще всего сталкиваются при первой выгрузке.
- ❌ remote origin already exists — адрес уже привязан; удалите его командой
git remote remove originи добавьте заново - ❌ failed to push some refs — на сервере есть коммиты, которых нет локально; выполните
git pull --rebaseперед push - ❌ Authentication failed — неверный токен или использован пароль вместо токена
- ❌ src refspec main does not match any — нет ни одного коммита; сделайте
git commitперед отправкой
⚠️ Внимание: команда git push --force принудительно перезаписывает историю на сервере. Используйте её только если точно понимаете, что удалённые коммиты не нужны, — восстановить их после этого будет сложно или невозможно.
Обновление проекта после первой загрузки
После первой публикации цикл работы становится короче. Внесли изменения в код — выполните три команды:
git add .
git commit -m "Описание изменений"
git push
Флаг -u из первой отправки уже привязал ветку, поэтому адрес и имя ветки указывать не нужно. Коммитьте изменения небольшими логичными порциями с понятными сообщениями — так проще откатиться к нужной версии, если что-то сломается.
Часто задаваемые вопросы
Можно ли выгрузить проект на GitHub без установки Git?
Да, через кнопку Upload files на странице репозитория в браузере. Но этот способ не сохраняет историю версий и неудобен для больших проектов с вложенными папками.
Чем отличается Public от Private репозитория?
Public виден всем пользователям интернета, включая поисковые системы. Private доступен только вам и тем, кого вы пригласили. Тип видимости можно изменить в любой момент в настройках репозитория.
Почему файлы не появились после git push?
Проверьте, что коммит был создан командой git log — если история пуста, коммит не выполнен. Также убедитесь, что смотрите ту же ветку на GitHub, в которую отправляли изменения.
Как удалить случайно загруженный файл с паролями?
Недостаточно удалить файл новым коммитом — он останется в истории. Потребуется перезапись истории (например, через git filter-repo) и обязательная смена самого пароля или токена, так как он мог быть скопирован.
Есть ли ограничения на размер репозитория?
GitHub ограничивает размер отдельного файла: загрузка через браузер и push больших файлов сверх лимита будут отклонены. Для крупных бинарных файлов предусмотрен механизм Git LFS. Точные актуальные лимиты стоит сверять в официальной документации GitHub.