**
Домашнее задание выполните в Google Docs и отправьте в личном кабинете на проверку ссылку на ваш документ.
Название файла должно содержать номер лекции и фамилию студента. Пример названия: "8.1. Git. - Александр Дивеев"
Перед тем как выслать ссылку, убедитесь, что ее содержимое не является приватным (открыто на просмотр всем, у кого есть ссылка). Если необходимо прикрепить дополнительные ссылки, просто добавьте их в свой Google Docs.
Любые вопросы по решению задач задавайте в чате Slack.
- Зарегистрируйте аккаунт на https://github.com/.
- Создайте публичный репозиторий. Обязательно поставьте галочку Initialize this repository with a README.
- Склонируйте репозиторий, используя https протокол (
git clone ...
). - Перейдите в каталог с клоном репозитория.
- Произведите первоначальную настройку git, указав свое настоящее имя и email (
git config --global user.name
иgit config --global user.email johndoe@example.com
). - Выполните команду
git status
и запомните результат. - Отредактируйте файл README.md любым удобным способом, тем самым переведя файл в состояние Modified.
- Еще раз выполните
git status
и продолжайте проверять вывод этой команды после каждого последующего шага. - Давайте теперь посмотрим изменения в файле README.md, выполнив команды
git diff
иgit diff --staged
. - Переведите файл в состояние staged (или как говорят просто добавьте файл в коммит) командой
git add README.md
. - И еще раз выполните команды
git diff
иgit diff --staged
. - Теперь можно сделать коммит
git commit -m 'First commit'
. - Сделайте
git push origin master
.
В качестве ответа пришлите ссылку на этот коммит
- Создайте файл .gitignore (обратите внимание на точку в начале файла), проверьте его статус сразу после создания.
- Добавьте файл .gitignore в следующий коммит (
git add...
). - Напишите правила в этом файле, чтобы игнорировать любые файлы
.pyc
, а также все файлы в директорииcache
. - Сделайте коммит и пуш.
В качестве ответа пришлите ссылку на этот коммит
- Создайте новую ветку dev и переключитесь на нее.
- Создайте файл test.sh с произвольным содержимым.
- Сделайте несколько коммитов и пушей, имитируя активную работу над этим файлом.
- Сделайте мердж данной ветки в основную (для начала необходимо переключиться на нее, и потом вызывать
git merge
). - Сделайте коммит и пуш.
В качестве ответа пришлите ссылку на граф коммитов https://github.com/ВАШ_ЛОГИН/ВАШ_РЕПОЗИТОРИЙ/network
Эти задания дополнительные (не обязательные к выполнению) и никак не повлияют на получение вами зачета по этому домашнему заданию. Вы можете их выполнить, если хотите глубже и/или шире разобраться в материале.
Сэмулируем конфликт. Перед выполнением ознакомьтесь с документацией.
- Создайте ветку conflict и переключитесь на нее.
- Внесите изменения в файл test.sh.
- Сделайте коммит и пуш.
- Переключитесь на основную ветку.
- Измените ту же самую строчку в файле test.sh.
- Сделайте коммит и пуш.
- Сделайте мердж ветки conflict в основную ветку и решите конфликт таким образом, чтобы в результате в файле оказался код и ветки conflict.
В качестве ответа пришлите ссылку на граф коммитов https://github.com/ВАШ_ЛОГИН/ВАШ_РЕПОЗИТОРИЙ/network