Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Программирование – 1 курс осень 2021 – 3.2 занятие

ТиМПИ
September 24, 2021

Программирование – 1 курс осень 2021 – 3.2 занятие

ТиМПИ

September 24, 2021
Tweet

More Decks by ТиМПИ

Other Decks in Programming

Transcript

  1. 7/44 7/44 Введение в GIT Система git разработана Линусом Торвальдсом

    в 2005 году Имеет: • Высокую скорость • Простую архитектуру • Хорошую поддержка нелинейной разработки • Полную децентрализацию • Возможность управления большими проектами git for windows
  2. 10/44 10/44 Ключевые слова в Git Репозиторий Git — набор

    файлов конфигурации, журналов операций, выполняемых над репозиторием, индекс расположения файлов и сами файлы с кодом Локальный репозиторий — репозиторий Git, расположенный на локальном компьютере Удалённый репозиторий — репозиторий Git, находящийся на удалённом сервере. Форк (англ. Fork) — копия репозитория. Пулл (англ. Pull) — получение последних изменений с удалённого сервера репозитория. Пуш (англ. Push) — отправка всех неотправленных коммитов на удалённый сервер репозитория. Пулл-реквест (англ. Pull request) — запрос на внесения своих изменений в основной (удалённый репозиторий). Кодревью — процесс проверки кода на соответствие стандартом, отсутствие ошибок и внешнему виду. Мёрдж (англ. Merge) — слияние разных версий кода (веток). Мастер (Master) — главная ветка репозитория. Ветка (Branch) —параллельная версия репозитория. Коммит (Commit) — фиксация изменений или запись изменений в репозиторий.
  3. 14/44 14/44 Ещё факты о Git… Источник: http://git-scm.com/book/ru/v2/Основы-Git-Запись-изменений-в-репозиторий • Почти

    все операции выполняются локально. • Целостность Git — сравнение в хэше SHA-1. • Git обычно только добавляет данные. Зашифрованное число: 012 SHA-1: c4a2d99bc28d236098a095277b7eb0718d6be068
  4. 17/44 17/44 Начало работы с консолью Минимальный набор команд для

    работы с Git Bash: • cd <путь> — смена директории • cd .. — смена директории вверх (двоеточие с пробелом) • ls — список файлов и папок в текущей директории • pwd — полный текущий путь директории • mkdir — создание директории • сtrl + L — очистка экрана • tab — автозаполнение команды в консоли • Стрелки ↑/↓ — выбор введённых ранее команд
  5. 21/44 21/44 Основные команды Git • git add <название> —

    индексация нового файла в Git или добавление его к коммиту. • git diff — список изменений по каждому файлу. • git status — список изменённых/добавленных/удалённых файлов. • git commit — создать новый коммит. • git rm — удалить файл в Git и в каталоге. • git log—список коммитов. • git checkout <название> — откатить изменения в файле или перейти на другую ветку. • git help <название> — получить справку по команде.
  6. 32/44 32/44 Процесс работы в команде • Программист хочет добавить

    новый функционал. • Создаёт себе ветку от master’a • Реализует функционал. • Тестирует и рефакторит код. • Делает пулл-реквест. • Пулл-реквест ревьюят, программист переключается на другую задачу. • Если к коду появляются замечания, программист переключается на ветку пулл-реквеста и правит там замечания. • После исправления, коммитит и пушит (для добавления в пулл-реквест). • Переключается обратно на свою рабочую ветку и продолжает писать код. • Цикл повторяется до тех пор, пока пулл-реквест не принимают.
  7. 33/44 33/44 Полезные ресурсы • Git for Windows: https://gitforwindows.org/ •

    Официальный гайд: https://git-scm.com/book/ru/v2 • Комикс-гайд: https://habr.com/ru/post/552872/ • Ещё гайд: https://javarush.ru/groups/posts/2683-nachalo-rabotih-s-git- podrobnihy-gayd-dlja-novichkov • Задачки по Git: https://githowto.com/ • Игра: https://learngitbranching.js.org/?locale=ru_RU
  8. 34/44 34/44 Введение в Github • Аудитория на 2020 год

    — 56 млн. человек. • Ежегодно: 40 + млн. репозиториев и 1.9 млрд. коммитов. • Большинство IT компаний просят Github при трудоустройстве. • Удобная система пулл-реквестов и обсуждений. • Множество интегрированных сервисов для разработчика. Источник: https://www.opennet.ru/opennews/art.shtml?num=54186
  9. 40/44 40/44 Как отправлять домашки? (1/3) • Создать репозиторий на

    GitHub • Подключиться через SSH к GitHub • Отвести ветку от мастера вашего репозитория: ✔Git checkout master ✔Git branch homework-2 • Создать папку с проектом Visual Studio • Написать код и сделать коммиты: ✔После каждого значимого продвижения ✔git add на каждый новый файл ✔git commit -a –m homework homework “ОПИСАНИЕ”
  10. 41/44 41/44 Как отправлять домашки? (2/3) • Когда задача готова:

    ✔git push -u origin homework-2. • На гитхабе, делаете Pull request ✔Выбираете ветку в «Branch:»; ✔Жмёте на pull request; ✔Вводите описание pull request’a; ✔Жмёте на create pull request; • Ссылку на то, что получилось, выкладываете через форму. • Ожидаете комментариев.
  11. 42/44 42/44 Как отправлять домашки? (3/3) • Коммиты только в

    локальной копии! • Не забывайте делать git checkout «название» при исправлении комментариев. • После того как исправили git push (без –u!). • Когда задача принята, merge pull request на гитхабе и удаляете ветку. Что выкладывать: • .cpp, .h-файлы, .vcxproj, .sln. • Текстовые файлы, нужные для работы программы.
  12. 43/44 43/44 Полезные ресурсы • Гайд на сайте GIT: http://git-scm.com/book/ru/v2/GitHub-Настройка-и-конфигурация-учетной-записи

    • Документация GitHub: https://docs.github.com/en • Cоветы по работе с GitHub: https://habr.com/ru/company/mailru/blog/359246/ • Оформление профиля GitHub: https://techrocks.ru/2020/05/13/make-your-github-profile-helpful-in-finding-job/ • Как оформить Readme: https://techrocks.ru/2019/04/16/good-readme-on-github/ • Полезные фишки GitHub: https://javarush.ru/groups/posts/1820-12-potrjasajujshikh-vozmozhnostey-github • Ещё фишки GitHub: https://howilive.ru/posts/open-source-part-1/ • GitHub по SSH: https://git-scm.com/book/ru/v2/Git-на-сервере-Генерация-открытого-SSH-ключа