На локальном компьютере вы проделали большую работу: развернули Django и создали проект, сгенерировали requirements.txt и оформили README. Но всё это хранится на вашем компьютере и пока что недоступно на GitHub. Самое время выложить все ваши изменения на сервер GitHub.
- Все созданные и изменённые файлы нужно добавить в список отслеживаемых файлов (в staging area):
...Dev/yatube_project$ git add .
Точка послеadd
определяет, что команда добавит в staging area файлы, расположенные в текущей директории и во вложенных директориях. Чтобы все нужные файлы попали в staging — командуgit add .
нужно выполнять из корневой директории проекта. - Делаем коммит — сохраняем список изменений, произошедших с момента предыдущего коммита. Текст сообщения в коммите для локальных русских и учебных проектов необязательно должен быть на английском:
...Dev/yatube_project$ git commit -m 'Создание структуры проекта'
- Отправляем коммит на сервер:
...Dev/yatube_project$ git push
Терминал должен порадовать вас примерно таким текстом:
Enumerating objects: 13, done.
Counting objects: 100% (13/13), done.
Delta compression using up to 12 threads
Compressing objects: 100% (10/10), done.
Writing objects: 100% (11/11), 2.87 KiB | 979.00 KiB/s, done.
Total 11 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/Название гит аккаунта/yatube_project.git
c35b004..7d546a1 main -> main
Вот как должен выглядеть проект на GitHub (на примере проекта «Анфиса для друзей»).https://github.com/Capwell/anfisa4friends-base-project-structureКак и задумывалось, проект на GitHub размещён без виртуального окружения и без служебных папок IDE.
Возможные проблемы
Нарушили безопасность
На почту, привязанную к вашему Git-аккаунту, может прийти письмо:
GitGuardian
GitGuardian has detected the following Django Secret Key exposed within your GitHub account.
**Details**
- Secret type: [Django Secret Key](https://github.com/Capwell/anfisa4friends-base-project-structure/commit/1da857992aaa8c6c1ca6ae3f40edaf1239acb3ef#diff-2203004519b042482878f2fd7f542e682841e9a5e9d117a8eea392d5aa79a789R23)
- Repository: название аккаунта/yatube_project
- Pushed date: March 5th 2021, 07:50:34 UTC
Это нормально. GitHub по мере возможности следит за безопасностью и информирует вас о потенциальных угрозах.В файле settings.py вашего Django-проекта содержится константа SECRET_KEY, это секретный ключ, и если он попадёт в недобрые руки, могут возникнуть проблемы с безопасностью проекта.Это не страшно для учебных проектов, а из дальнейшего курса вы узнаете, как прятать секреты.
Отправили в гит служебные папки
Распространённая ошибка: разработчик забыл добавить служебную папку IDE в .gitignore — и она улетела в репозиторий. Статистика показывает, что 57.56% начинающих разработчиков сталкиваются с этой проблемой.Не стоит паниковать и рвать волосы на разных местах тела: проблема выглядит неприятно, но лечится в несколько команд:
# Добавить папку в игнор-лист гита
# командой из корневой директории проекта (а можно дописать gitignore руками)
echo '.vscode' >> .gitignore
# Удалить папку из списка отслеживаемых файлов (staging area)
git rm -r --cached .vscode
# Добавить файл в гит
git add .gitignore
# Зафиксировать изменения в новом коммите
git commit -m 'Директория .vscode добавлена в gitignore'
# Запушить
git push