Отчет по лабораторной работе № 2 "Система контроля версий Git" Выполнил: Комаров Е.А. Группа: А-02-24 Проверил: Примечание: работа выполнялась на Windows. 1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение (АЛИСА): User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ 2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто (АЛИСА): User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ ls User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ 3. Создал каталоги Алисы и Боба, создал каталог "project", изучил команду "cd" в процессе (АЛИСА): User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ mkdir alice User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ mkdir bob User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ cd alice User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice $ mkdir project User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice $ cd.. bash: cd..: command not found User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice $ cd .. User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2 $ cd alice User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice $ cd project 4. Инициализировал репозитарий (АЛИСА): User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project $ git init Initialized empty Git repository in C:/Users/User/OneDrive/Рабочий стол/lab2/ali ce/project/.git/ 5. Переименование ветки в main (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (master) $ git branch -m main 6. Проверка наличия скрытой папки .git/ (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ ls -A .git/ 7. Добавление имени и почты пользователя Алиса (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git config user.name 'Alice (KomarovEA)' User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git config user.email 'KomarovYegA@mpei.ru' 8. Вызов git status (комментарии) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git status On branch main ## в текущей ветке No commits yet ## нет зафиксированных изменений Untracked files: ## неотслеживаемые элементы каталога (use "git add ..." to include in what will be committed) bin/ main.cpp obj/ project.cbp nothing added to commit but untracked files present (use "git add" to track) 9. Начало отслеживания main.cpp (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add main.cpp 10. Вызов git status (комментарии) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git status On branch main ## в текущей ветке No commits yet ## нет зафиксированных изменений Changes to be committed: ## изменения которые надо закоммитить (use "git rm --cached ..." to unstage) new file: main.cpp Untracked files: ## неотслеживаемые элементы каталога (use "git add ..." to include in what will be committed) bin/ obj/ project.cbp 11. Добавление коммита (комментарии) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git commit -m 'code: заготовка программы' [main (root-commit) 98647e7] code: заготовка программы ## присвоение хэша коммиту 1 file changed, 9 insertions(+) ## количество изменённых файлов и число добавлений внутри файла create mode 100644 main.cpp 12. Начало отслеживания project.cbp (комментарии) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add project.cbp warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it ## уведомление связанное с тем, что файл открыт в codeblocks и не сохранён --- User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git commit -m 'build: файл проекта' [main 8d39123] build: файл проекта 1 file changed, 40 insertions(+) create mode 100644 project.cbp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) --- User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git status On branch main Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: main.cpp Untracked files: (use "git add ..." to include in what will be committed) bin/ obj/ project.layout no changes added to commit (use "git add" and/or "git commit -a") --- 13. Добавление в индекс конкретного файла и создание коммита одним действием (комментарии) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add main.cpp git commit -m "code: добавлен вывод суммы" [main 95ae5cd] добавлен вывод суммы 1 file changed, 4 insertions(+), 1 deletion(-) ## количество изменённых файлов, добавлений и удалений внутри файла (АЛИСА) 14. Добавление в индекс многих отслеживаемых файлов и создание коммита одним действием (комментарии) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add -u ## добавление в индекс многих отслеживаемых файлов git commit -m "code: добавлен вывод разности" [main 342c14f] добавлен вывод разности 1 file changed, 1 insertion(+), 1 deletion(-) 15. Начало отслеживания файла нужного для игнорирования ненужных файлов (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add .gitignore 16. Проверка игнорирования (АЛИСА) $ git status On branch main Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: main.cpp Untracked files: (use "git add ..." to include in what will be committed) no changes added to commit (use "git add" and/or "git commit -a") !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --- User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add .gitignore git commit -m "git: предусмотрено игнорирование файлов" [main b24730f] git: предусмотрено игнорирование файлов 1 file changed, 3 insertions(+) create mode 100644 .gitignore --- 17. Просмотр коммитов. (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --stat commit b24730f9f017f430c429c336cfbce07bac779e70 (HEAD -> main) Author: Alice (KomarovEA) Date: Fri Mar 21 11:25:55 2025 +0300 git: предусмотрено игнорирование файлов .gitignore | 3 +++ 1 file changed, 3 insertions(+) commit 342c14fb634ede5b1ce2fc36c6c7d1b7b3946c3c Author: Alice (KomarovEA) Date: Thu Mar 20 22:13:17 2025 +0300 code: добавлен вывод разности main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 95ae5cd7a8d13a20be4ef4ef34bf855c118a6371 Author: Alice (KomarovEA) Date: Thu Mar 20 22:11:01 2025 +0300 code: добавлен вывод суммы 18. Просмотр коммитов кратко (без указания автора, даты, укороченный хэш) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate b24730f (HEAD -> main) git: предусмотрено игнорирование файлов 342c14f code: добавлен вывод разности 95ae5cd code: добавлен вывод суммы 8d39123 build: файл проекта 98647e7 code: заготовка программы 19. Просмотр коммитов кратко и деревом (полезно при наличии разветвлений) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate --all --graph * b24730f (HEAD -> main) git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 20. Поиск коммита из категории build и связанного с файлом project.cbp (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --grep "build:" -- project.cbp commit 8d3912301d37829ea58d99c0490e454a3004a762 Author: Alice (KomarovEA) Date: Thu Mar 20 22:00:14 2025 +0300 build: файл проекта 21. Просмотр последнего комита (вызов текущего комита) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git show HEAD commit b24730f9f017f430c429c336cfbce07bac779e70 (HEAD -> main) Author: Alice (KomarovEA) Date: Fri Mar 21 11:25:55 2025 +0300 git: предусмотрено игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bdcd1e7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/project.layout \ No newline at end of file 22. Просмотр последнего комита (по имени ветви) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git show main commit b24730f9f017f430c429c336cfbce07bac779e70 (HEAD -> main) Author: Alice (KomarovEA) Date: Fri Mar 21 11:25:55 2025 +0300 git: предусмотрено игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bdcd1e7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/project.layout \ No newline at end of file 23. Просмотр последнего комита (по хэшу) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git show b24730f commit b24730f9f017f430c429c336cfbce07bac779e70 (HEAD -> main) Author: Alice (KomarovEA) Date: Fri Mar 21 11:25:55 2025 +0300 git: предусмотрено игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bdcd1e7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/project.layout \ No newline at end of file 24. Просмотр предпоследнего комита (с помощью HEAD) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git show HEAD~1 commit 342c14fb634ede5b1ce2fc36c6c7d1b7b3946c3c Author: Alice (KomarovEA) Date: Thu Mar 20 22:13:17 2025 +0300 code: добавлен вывод разности diff --git a/main.cpp b/main.cpp index c160a61..d73a186 100644 --- a/main.cpp +++ b/main.cpp @@ -7,6 +7,6 @@ int main() cout << "Enter A and B: "; int a, b; cin >> a >> b; - cout << "A + B = " << a + b << '\n'; + cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n'; return 0; } 25. Просмотр изменений в файле (добавлено произведение) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git diff warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the n ## запущен codeblocks с кодом ext time Git touches it diff --git a/main.cpp b/main.cpp index d73a186..0702cf6 100644 --- a/main.cpp +++ b/main.cpp @@ -7,6 +7,7 @@ int main() cout << "Enter A and B: "; int a, b; cin >> a >> b; - cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n';; + cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n'; + cout << "A*B = " << a*b << '\n'; return 0; } diff --git a/project.cbp b/project.cbp index 99bb702..34f06bc 100644 --- a/project.cbp +++ b/project.cbp @@ -32,6 +32,7 @@ 27. Просмотр изменений от указанного коммита до последнего (с помощью HEAD) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git diff HEAD~2 warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the n ## запущен codeblocks с кодом ext time Git touches it diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bdcd1e7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/project.layout \ No newline at end of file diff --git a/main.cpp b/main.cpp index c160a61..0702cf6 100644 --- a/main.cpp +++ b/main.cpp @@ -7,6 +7,7 @@ int main() cout << "Enter A and B: "; int a, b; cin >> a >> b; - cout << "A + B = " << a + b << '\n'; + cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n'; + cout << "A*B = " << a*b << '\n'; 28. Просмотр изменений от указанного коммита до последнего (с помощью хэшей) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git diff 342c14f 98647e7 diff --git a/main.cpp b/main.cpp index d73a186..b4392ec 100644 --- a/main.cpp +++ b/main.cpp @@ -4,9 +4,6 @@ using namespace std; int main() { - cout << "Enter A and B: "; - int a, b; - cin >> a >> b; - cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n';; + cout << "Hello world!" << endl; return 0; } diff --git a/project.cbp b/project.cbp deleted file mode 100644 index 99bb702..0000000 --- a/project.cbp +++ /dev/null @@ -1,40 +0,0 @@ - - 29. Коммит произведения (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add main.cpp git commit -m "code: добавлен вывод произведения" [main b14540f] code: добавлен вывод произведения 1 file changed, 3 insertions(+) 29. Откат изменений к предпоследнему комиту (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at b24730f git: предусмотрено игнорирование файлов 30. Откат изменений в файле (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git checkout HEAD -- main.cpp 31. Генерация ключей для доступа к серверу (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ ssh-keygen Generating public/private ed25519 key pair. ## генерация открытого и закрытого ключей Enter file in which to save the key (/c/Users/User/.ssh/id_ed25519): Created directory '/c/Users/User/.ssh'. ## папка с ключами Enter passphrase for "/c/Users/User/.ssh/id_ed25519" (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /c/Users/User/.ssh/id_ed25519 Your public key has been saved in /c/Users/User/.ssh/id_ed25519.pub The key fingerprint is: SHA256:cVSLdUiM9aNvq414daMydkwl7zFwKVTyDf91QhpeASI User@DESKTOP-F7J1PEL The key's randomart image is: +--[ED25519 256]--+ | E o*B+Bo | | o.=oXoo.| | . o = +.*| | o = *+| | S . B .| | o.=.| | o.=.+| | =.B o | | o.*.o | +----[SHA256]-----+ User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ cat ~/.ssh/id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMBoyfjj+7JfYex4tBlcnzQa1GH1HiBjkd4MuhkkBi3V User@DESKTOP-F7J1PEL ## открытый ключ 32. Отправка проекта на сервер с машины Алисы (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git remote add origin http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git git push -u origin main warning: auto-detection of host provider took too long (>2000ms) warning: see https://aka.ms/gcm/autodetect for more information. warning: use of unencrypted HTTP remote URLs is not recommended; see https://aka.ms/gcm/unsaferemotes for more information. warning: auto-detection of host provider took too long (>2000ms) warning: see https://aka.ms/gcm/autodetect for more information. Enumerating objects: 12, done. Counting objects: 100% (12/12), done. Delta compression using up to 16 threads Compressing objects: 100% (11/11), done. Writing objects: 100% (12/12), 1.72 KiB | 881.00 KiB/s, done. Total 12 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git * [new branch] main -> main branch 'main' set up to track 'origin/main'. 33. Загрузка проекта с сервера (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob $ git clone http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git project Cloning into 'project'... remote: Enumerating objects: 12, done. remote: Counting objects: 100% (12/12), done. remote: Compressing objects: 100% (11/11), done. remote: Total 12 (delta 1), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (12/12), done. Resolving deltas: 100% (1/1), done. 34. Настройка git на машине боба (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob $ cd project User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git init Reinitialized existing Git repository in C:/Users/User/OneDrive/Рабочий стол/lab 2/bob/project/.git/ User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git config user.name 'Bob (KomarovEA)' git config user.email 'KomarovYegA@mpei.ru' ---- Совместная работа над проектом без конфликтов правок ---- 35. Коммит произведения чисел (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git commit -m"code:добавлено произведение чисел" [main fee402a] code:добавлено произведение чисел 1 file changed, 2 insertions(+), 2 deletions(-) 36. Отправка коммита на сервер (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git push warning: auto-detection of host provider took too long (>2000ms) warning: see https://aka.ms/gcm/autodetect for more information. Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 397 bytes | 397.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git 342c14f..fee402a main -> main 37. Получение коммита с сервера на машину алисы (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git fetch remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (3/3), done. remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 377 bytes | 34.00 KiB/s, done. From http://uit.mpei.ru/git/KomarovYegA/cs-lab02 342c14f..fee402a main -> origin/main 38. Просмотр всех коммитов (деревом) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate --all --graph * fee402a (origin/main, origin/HEAD) code: добавлено произведение чисел * b24730f (HEAD -> main) git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 39. Передвижение HEAD к последнему коммиту (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git pull --ff-only Updating 342c14f..fee402a Fast-forward main.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 40. Просмотр всех коммитов (деревом) (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate --all --graph * fee402a (HEAD -> main, origin/main, origin/HEAD) code: добавлено произведение ч исел * b24730f git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 41. Добавление коммита (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git commit -m "code: добавлено деление чисел" [main 458e011] code: добавлено деление чисел 1 file changed, 1 insertion(+), 1 deletion(-) 42. Отправка коммита на сервер (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 384 bytes | 384.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git fee402a..458e011 main -> main 43. Загрузка последних комитов с сервера на машину боба (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git fetch remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (3/3), done. remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 364 bytes | 36.00 KiB/s, done. From http://uit.mpei.ru/git/KomarovYegA/cs-lab02 fee402a..458e011 main -> origin/main 44. Передвижение HEAD к последнему коммиту (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git pull --ff-only Updating fee402a..458e011 Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---- Совместная работа над проектом без конфликтов правок ---- 45. Добавление комита (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git commit -m "code: изменение формы вывода" [main 0e588fc] code: изменение формы вывода 1 file changed, 4 insertions(+), 2 deletions(-) 46. Отправка комита на сервер (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 371 bytes | 371.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git 458e011..0e588fc main -> main 47. Загрузка последних комитов с сервера (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git fetch remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (3/3), done. remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 351 bytes | 35.00 KiB/s, done. From http://uit.mpei.ru/git/KomarovYegA/cs-lab02 458e011..0e588fc main -> origin/main 48. Передвижение HEAD к последнему коммит (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git pull --ff-only Updating 458e011..0e588fc Fast-forward main.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 49. Добавление комита (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git commit -m "code: добавлен вывод максимума" [main 219e184] code: добавлен вывод максимума 1 file changed, 5 insertions(+) 50. Отправка комита на сервер (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 421 bytes | 421.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git 0e588fc..219e184 main -> main 51. Создание коммита (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git commit -m "code: добавлен вывод минимума" [main 8425085] code: добавлен вывод минимума 1 file changed, 5 insertions(+) 52. Отправка комита на сервер (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git push To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/KomarovYegA/cs-lab02. git' hint: Updates were rejected because the remote contains work that you do not hint: have locally. This is usually caused by another repository pushing to hint: the same ref. If you want to integrate the remote changes, use hint: 'git pull' before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. 53. Получение последних коммитов с сервера (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git fetch remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (3/3), done. remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 401 bytes | 40.00 KiB/s, done. From http://uit.mpei.ru/git/KomarovYegA/cs-lab02 0e588fc..219e184 main -> origin/main 54. Вывод комитов (дерево, демонстрация разветвления) (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git log --oneline --decorate --all --graph * 8425085 (HEAD -> main) code: добавлен вывод минимума | * 219e184 (origin/main, origin/HEAD) code: добавлен вывод максимума |/ * 0e588fc code: изменение формы вывода * 458e011 code: добавлено деление чисел * fee402a code: добавлено произведение чисел * b24730f git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 55. Попытка переместить коммит Боба выше origin/main (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git rebase origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp error: could not apply 8425085... code: добавлен вывод минимума ## из-за разветвления возникает конфликт hint: Resolve all conflicts manually, mark them as resolved with hint: "git add/rm ", then run "git rebase --continue". hint: You can instead skip this commit: run "git rebase --skip". hint: To abort and get back to the state before "git rebase", run "git rebase --abo rt". hint: Disable this message with "git config set advice.mergeConflict false" Could not apply 8425085... code: добавлен вывод минимума 56. Продолжение выполнения действия rebase после редакции кода (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main|REBASE 1/1) $ git add main.cpp git rebase --continue Successfully rebased and updated refs/heads/main. 57. Вывод истории комитов, видно соединение ветвей (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git log --oneline --decorate --all --graph * 11b7c9f (HEAD -> main) code: добавлен вывод минимума * 219e184 (origin/main, origin/HEAD) code: добавлен вывод максимума * 0e588fc code: изменение формы вывода * 458e011 code: добавлено деление чисел * fee402a code:добавлено произведение чисел * b24730f git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 58. Отправка коммита на сервер (БОБ) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/bob/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 16 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 409 bytes | 409.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git 219e184..11b7c9f main -> main ---- Использование веток ---- 59. Создание ветки double (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git branch double 60. Переключение на ветку double (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git checkout double Switched to branch 'double' 61. Создание комита (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git add main.cpp User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git commit -m "code: изменён тип переменных на double" [double 5c770f8] code: изменён тип переменных на double 1 file changed, 1 insertion(+), 1 deletion(-) 62. Вывод истории комитов. Видны ветви double и main (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git log --oneline --decorate --all --graph * 5c770f8 (HEAD -> double) code: изменён тип переменных на double * 219e184 (origin/main, origin/HEAD, main) code: добавлен вывод максимума * 0e588fc code: изменение формы вывода * 458e011 code: добавлено деление чисел * fee402a code:добавлено произведение чисел * b24730f git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 63. Переключение на ветку main (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. 64. Загрузка последних комитов с сервера (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git fetch remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (3/3), done. remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 389 bytes | 38.00 KiB/s, done. From http://uit.mpei.ru/git/KomarovYegA/cs-lab02 219e184..11b7c9f main -> origin/main 65. Передвижение HEAD к последнему коммиту (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git pull --ff-only Updating 219e184..11b7c9f Fast-forward main.cpp | 4 ++++ 1 file changed, 4 insertions(+) 66. Вывод истории комитов. Видно разветвление (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate --all --graph * 5c770f8 (double) code: изменён тип переменных на double | * 11b7c9f (HEAD -> main, origin/main, origin/HEAD) code: добавлен вывод минимума |/ * 219e184 code: добавлен вывод максимума * 0e588fc code: изменение формы вывода * 458e011 code: добавлено деление чисел * fee402a code:добавлено произведение чисел * b24730f git: предусмотрено игнорирование файлов * 342c14f code: добавлен вывод разности * 95ae5cd code: добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы ---- 67. Переключение на ветку main (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. ## main полностью совпадает с origin/main 68. Слияние веток (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (double) $ git merge double Merge branch 'double' ## имя коммита Auto-merging main.cpp Merge made by the 'ort' strategy. main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 69. Вывод истории комитов. Видно слияние ветвей после разделения (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git log --oneline --decorate --all --graph * 16a72b1 (HEAD -> main) Merge branch 'double' |\ | * 10856c7 (double) code: тип переменных изменён на double * | 11b7c9f (origin/main, origin/HEAD) code: добавлен вывод минимума |/ * 219e184 code: добавлен вывод максимума * 0e588fc code: изменение формы вывода * 458e011 code: добавлено деление чисел * fee402a code:добавлено произведение чисел * b24730f git: предусмотрено игнорирование файлов * 342c14f добавлен вывод разности * 95ae5cd добавлен вывод суммы * 8d39123 build: файл проекта * 98647e7 code: заготовка программы 70. Отправка данных на сервер (АЛИСА) User@DESKTOP-F7J1PEL MINGW64 ~/OneDrive/Рабочий стол/lab2/alice/project (main) $ git push Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 16 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 681 bytes | 681.00 KiB/s, done. Total 6 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/KomarovYegA/cs-lab02.git 11b7c9f..16a72b1 main -> main ---