PLLUG C++/Qt Roadmap Book
  • Вступ
  • Найважливіший розділ у цій книжці
    • Кілька критично важливих порад
    • Встановлення середовища та початок роботи
    • Підготовка до роботи. Командний рядок.
      • Встановлення та налаштування суперконсолі (тільки на Windows)
      • Cheatsheet: Робота з командним рядком
    • Компіляція та запуск першої програми
      • Найменьша програма мовою С++
      • Компіляція програми: як це працює
      • Починаємо програмувати
    • Базова робота з Git та створення власного репозиторію
      • Підготовка до роботи
      • Створюємо репозиторій та заливаємо на GitHub
      • Cheatsheet: Простий алгоритм для роботи з системою контролю версій (одна гілка, один розробник)
      • Працюємо з Git правильно
  • Мова С++ - швидкий вступ та обрані теми
    • Змінні. Деякі з основних типів та їх застосування.
      • Типи int та double
      • Тип bool
      • Тип char
      • Тип std::string
      • Тип std::vector
      • Тип std::array
    • Ключове слово const
  • Середовище розробки QtCreator
    • Налаштування та підготовка до роботи
      • Налаштування інструментаріїв
    • Довідка та ресурси
    • Гарячі клавіші
    • Робота з проектами у QtCreator
      • Файли проекту
      • Основні змінні, які беруть участь у описі проекту
      • Компіляція проекту Qt
      • Очистка проекту
  • Абстрактні типи даних та керування памяттю
    • Абстрактні типи даних
      • Об'єкти та класи. Абстракція.
      • Поля та методи класу
      • Успадкування
      • Віртуальні методи та поліморфізм
    • Вказівники та пам'ять
      • Адреса
      • Вказівники
      • Вказівники: примітивна демонстрація програми у пам'яті
      • Час зберігання об'єкту
  • Знайомство з Qt5
    • Огляд Qt5
      • Ласкаво просимо у світ Qt
      • Огляд можливостей Qt 5
      • Ліцензування Qt
      • Короткий огляд історії Qt
      • “Екосистема” Qt
    • Створення графічного інтерфейсу засобами Qt
      • Віджети (Widgets)
      • Компонування (Layouts)
      • Сигнально-слотові з'єднання
      • Створення сигналів (signals) та слотів (slots)
      • Підсумок: сигнально-слотові з'єднання
      • Коротко про елементи графічного інтерфейсу та їх використання
  • Cheatsheets
  • Demos
  • Missions
    • Mission 1: Досліджуємо Git та командний рядок
    • Mission 2: Консольна гра
    • Mission 3: MazeGame
    • Mission 4: Створюємо абстрактний тип даних
Powered by GitBook
On this page
  • Створюємо репозиторій
  • Сценарій 1: створюємо репозиторій на GitHub та клонуємо його
  • Сценарій 2: створюємо репозиторій локально та зв'язуємо з віддаленим на GitHub
  • Створюємо програму, "комітимо"(commit) зміни
  1. Найважливіший розділ у цій книжці
  2. Базова робота з Git та створення власного репозиторію

Створюємо репозиторій та заливаємо на GitHub

PreviousПідготовка до роботиNextCheatsheet: Простий алгоритм для роботи з системою контролю версій (одна гілка, один розробник)

Last updated 6 years ago

Створюємо репозиторій

Для того щоб створити власний репозиторій — зареєструйтеся на GitHub:

  1. Залогінтеся, та зайдіть на головну сторінку GitHub.

  2. Натисніть на конпку створення нового репозиторію.

3. Оберіть ім’я для репозиторію (Repository name).

4.При створенні нового репозиторію оберіть “Initialize this repository with a README”. Це ініціалізує репозиторій та дасть змогу одразу ж клонувати його.

Сценарій 1: створюємо репозиторій на GitHub та клонуємо його

  1. Скопіюйте адресу вашого нового репозаторію (наприклад: https://github.com/user/test-project.git).

2. Відкрийте консоль. Перейдіть у директорію де буде знаходитись ваш проект.

3. Виконайте команду git clone https://адреса_репозиторію.

4. Перейдіть у теку репозиторія. Тепер можна розпочинати роботу.

~ pwd
/home/user

~ mkdir projects

~ cd projects

~ pwd
/home/user/projects

~ git clone https://github.com/user/test-project.git
Cloning into 'test-project'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
Checking connectivity... done.

~ ls
test-project

~ cd test-project 

~ ls
README.md

У наведеному вище прикладі ми:

  • Вивели поточну директорію

  • Створили у поточній директорії нову теку з назвою projects

  • Перейшли у теку projects

  • Вивели поточну директорію ще раз для перевірки де ми знаходимось

  • Клонували наш репозиторій Git

  • Переглянули список директорій, щоб побачити, як називається директорія нашого Git репозиторію

  • Перейшли в теку репозиторію

  • Вивели список файлів у теці репозиторію

Сценарій 2: створюємо репозиторій локально та зв'язуємо з віддаленим на GitHub

~ pwd
/home/user

~ mkdir projects

~ cd projects

~ pwd
/home/user/projects

~ git init
Initialized empty Git repository in C:/MSYS2_Cmder/vendor/msys64/home/test/test-project/.git/

~ touch README.md

~ git add README.md

~ git commit -m "Initial commit."
[master (root-commit) 3637301] Initial commit.
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 README.md

~ git remote add origin https://github.com/alexchmykhalo/test-project.git

~ git push -u origin master
Username for 'https://github.com': user
Password for 'https://user@github.com': 
Counting objects: 3, done.
Writing objects: 100% (3/3), 218 bytes | 218.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/alexchmykhalo/test2.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

У наведеному вище прикладі ми:

  • Вивели поточну директорію

  • Створили у поточній директорії нову теку з назвою projects

  • Перейшли у теку projects

  • Вивели поточну директорію ще раз для перевірки де ми знаходимось

  • Створили новий репозиторій Git

  • Створили новий файл README.md

  • Додали файл README.md до наступного коміту

  • Закомітили зміни

  • Додали віддалений репозиторій, створений на GitHub (тобто, у той репозиторій ми будемо надсилати зміни)

  • Надіслали зміни у віддалений репозиторій

Створюємо програму, "комітимо"(commit) зміни

Додамо головний файл нашої програми: main.cpp.

~ touch main.cpp

Також ми можемо змінити нашу програму (файл main.cpp), як завгодно.

Тепер відкриємо консоль та перевіримо статус репозиторію за допомогою команди git status:

~ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

        main.cpp

nothing added to commit but untracked files present (use "git add" to track)

Ми бачимо, що ми маємо кілька файлів, які не є під контролем Git (Untracked files). Додамо ці файли до наступного коміту з допомогою команди git add:

~ git add main.cpp
~ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        new file:   main.cpp

Тепер ми бачимо, що файли з нашого проекту будуть додані до наступного коміту (Changes to be committed).

Тепер ми зробити коміт з допомогою команди git commit -m “коментар”.

% git commit -m "Added project files."
[master 275127f] Added project files.
 3 files changed, 90 insertions(+)
 create mode 100644 main.cpp

Для того, щоб завантажити (“залити”) зміни на GitHub (на віддалений репозиторій), виконаємо команду git push. Під час виконання цієї команди вам необхідно буде ввести свій логін та пароль до GitHub.

% git push
Username for 'https://github.com': user
Password for 'https://user@github.com': 
Counting objects: 5, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 913 bytes | 0 bytes/s, done.
Total 5 (delta 0), reused 0 (delta 0)
To https://github.com/user/test-project.git
   fef3301..275127f  master -> master

Для викладача: візуальне демо, як працює Git під час розробки проекту

Сценарій демо:

git clone
git commit
git commit
git push
git commit
git commit
git fakeTeamwork
git fakeTeamwork
git push
git pull
git push

Демо візуальзіція:

https://learngitbranching.js.org/?NODEMO
https://github.com/