Это репозиторий-задача, для тренировки навыков работы с git на очных тренингах с несколькими участниками.
Это проект консольного калькулятора.
- Сделайте fork этого репозитория.
- Склонируйте себе свой форк.
git clone - Откройте проект в IDE и немного изучите его.
- Изучите коммиты начиная с "refactoring tests"
- Перейдите в ветку
2args— это ветка разработки, в которой калькулятору добавили функциональности.
git checkout 2args - Изучите по логу коммитов, что именно произошло в этой ветке, начиная с коммита "refactoring tests".
- Влейте в эту ветку последние изменения из
master. Будут конфликты. Чтобы их грамотно разрешить, придётся разобраться с тем, какие изменения случились вmasterи как их подружить с изменеиями в ветке. Запустите тесты, чтобы проверить, что конфликты разрешены корректно.git merge master
git mergetool
git commit - Сделайте push
git push - Перейдите на ветку
master - Влейте ветку
2argsвmasterс созданием коммита
git merge 2args --no-ff - Сравните diff в мердж-коммите в ветку
2argsи в веткуmaster
- Перейдите в ветку
handleErrors— там некоторое время назад начали добавлять корректную обработку ошибочного ввода пользователя. - Изучите историю коммитов, чтобы понять, что менялось.
- Сделайте rebase этой ветки на ветку
master. Разрешите конфликты.
git rebase master
git mergetool
git rebase --continue - Попробуйте сделать пуш ветки, посмотрите на результат
- Добавьте ссылку на исходный репозиторий.
git remote add base https://github.com/CampusSpb/git-task - Сделайте fetch из этого репозитория
git fetch base - Посмотрите на ветки из репозитория
base, сравните с текущими
- Перейдите в ветку
handleErrors - Сделайте force push на этой ветке
git push --force-with-lease
- Перейдите в ветку
handleErrors - Сделайте hard reset на
base/handleErrors
git reset --hard base/handleErrors - Сделайте mixed reset на
origin/handleErrors. Посмотрите на состояние директории и на diff с последним коммитом
git reset --mixed origin/handleErrors