Отчет по лабораторной работе № 2 "Система контроля версий Git" Выполнил: Спесивцев Я. М. Группа: А-03-24 Проверил: Козлюк Д. А. Примечание: работа выполнялась на Windows 11. _______________________________________________________________________ 1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ _______________________________________________________________________ 2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ ls Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ _______________________________________________________________________ 3. Создал каталоги Алисы и Боба, создал каталог "project", изучил команду "cd" в процессе: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ mkdir alice Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ mkdir bob Infinioka@MSI MINGW64 ~/Рабочий стол/lab02 $ cd alice Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice $ mkdir project Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice $ cd project Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project $ cd .. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice $ cd project _______________________________________________________________________ 4. Инициализировал репозитарий: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project $ git init Initialized empty Git repository in C:/Users/yaros_tm2sc6p/Рабочий стол/lab02/alice/project/.git/ 4.1 Поменял имя ветки на main: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (master) $ git branch -m main Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git config user.name 'Alice (SpesivtsevYM)' Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git config user.email 'SpesivtsevYM@mpei.ru' _______________________________________________________________________ 5. Создал проект в репозитарии Алисы Просмотрел состояние рабочей папки: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git status On branch main No commits yet nothing to commit (create/copy files and use "git add" to track) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git status On branch main No commits yet Untracked files: (use "git add ..." to include in what will be committed) main.cpp project.cbp nothing added to commit but untracked files present (use "git add" to track) 5.1 Добавил файл main.cpp в индекс: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git add main.cpp Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/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) project.cbp Теперь появился новый файл, который git просит зафиксировать 5.2 Выполнил коммит с файлом main.cpp: Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: загатовка программы' [main (root-commit) 27fad3a] code: загатовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cpp Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/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 _______________________________________________________________________ 6. Заменил тело функции main() на ввод двух чисел (здесь под сборкой Боба подразумевается замена тела функции main) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -m 'build: сборка Боба' [main 7aeb695] build: сборка Боба 1 file changed, 38 insertions(+) create mode 100644 project.cbp Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/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 no changes added to commit (use "git add" and/or "git commit -a") Здесь чётко видно, что файл main.cpp был изменён _______________________________________________________________________ 7. Добавил в программу вывод разности и суммы a и b Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -a -m 'code: изменение main' [main b7700a9] code: изменение main 1 file changed, 7 insertions(+), 2 deletions(-) _______________________________________________________________________ 8. Указал Git игнорировать присутствие каталога bin и выполнил проверку Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git add .gitignore Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -m 'build: создание gitignore' [main 16a82c9] build: создание gitignore 1 file changed, 3 insertions(+) create mode 100644 .gitignore _______________________________________________________________________ 9.1 Использовал команду git log --stat Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --stat commit 16a82c9f4244f2a73a5c9199a45e927471147683 (HEAD -> main) Author: Alice (SpesivtsevYM) Date: Sat Mar 15 00:04:23 2025 +0300 build: создание gitignore .gitignore | 3 +++ 1 file changed, 3 insertions(+) commit b7700a9409925a7752a45ca92613b7fcc5897fba Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:56:27 2025 +0300 code: изменение main main.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 7aeb69522dcc496a2c0f9daeb5494e2289837bd8 Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:54:20 2025 +0300 build: сборка Боба project.cbp | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) commit 27fad3a408d5b096ff709c8959288fcf5adb244f Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:50:50 2025 +0300 code: загатовка программы main.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) 9.2 Использовал команду git log --oneline --decorate Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate f7a5e0f (HEAD -> main) build: creation .gitignore b2fcd9a code: изменение main ba41768 build: сборка Боба b5369f9 code: загатовка программы 9.3 Использовал команду git log --oneline --decorate --all Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * 16a82c9 (HEAD -> main) build: создание gitignore * b7700a9 code: изменение main * 7aeb695 build: сборка Боба * 27fad3a code: загатовка программы 9.4 Нашёл сначала коммиты по теме build, затем, затрагивающие project.cbp Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --grep 'build:' commit 16a82c9f4244f2a73a5c9199a45e927471147683 (HEAD -> main) Author: Alice (SpesivtsevYM) Date: Sat Mar 15 00:04:23 2025 +0300 build: создание gitignore commit 7aeb69522dcc496a2c0f9daeb5494e2289837bd8 Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:54:20 2025 +0300 build: сборка Боба Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git show HEAD commit 16a82c9f4244f2a73a5c9199a45e927471147683 (HEAD -> main) Author: Alice (SpesivtsevYM) Date: Sat Mar 15 00:04:23 2025 +0300 build: создание gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9d83ebf --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +*.layout Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git show main commit 16a82c9f4244f2a73a5c9199a45e927471147683 (HEAD -> main) Author: Alice (SpesivtsevYM) Date: Sat Mar 15 00:04:23 2025 +0300 build: создание gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9d83ebf --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +*.layout _______________________________________________________________________ 10. Просмотрел предпоследний коммит Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git show HEAD~1 commit b7700a9409925a7752a45ca92613b7fcc5897fba Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:56:27 2025 +0300 code: изменение main diff --git a/main.cpp b/main.cpp index b4392ec..c486466 100644 --- a/main.cpp +++ b/main.cpp @@ -4,6 +4,11 @@ using namespace std; int main() { - cout << "Hello world!" << endl; - return 0; + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; + cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n'; + + } Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --online fatal: unrecognized argument: --online Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --oneline 16a82c9 (HEAD -> main) build: создание gitignore b7700a9 code: изменение main 7aeb695 build: сборка Боба 27fad3a code: загатовка программы Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git show b7700a9 commit b7700a9409925a7752a45ca92613b7fcc5897fba Author: Alice (SpesivtsevYM) Date: Fri Mar 14 23:56:27 2025 +0300 code: изменение main diff --git a/main.cpp b/main.cpp index b4392ec..c486466 100644 --- a/main.cpp +++ b/main.cpp @@ -4,6 +4,11 @@ using namespace std; int main() { - cout << "Hello world!" << endl; - return 0; + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; + cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n'; + + } _______________________________________________________________________ 11.Добавил печать произведения чисел и просмотрел изменения в рабочей копии Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git add -u Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: added product' [main bb26101] code: added product 2 files changed, 4 insertions(+), 2 deletions(-) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git diff diff --git a/main.cpp b/main.cpp index 3b0a2eb..dc88e77 100644 --- a/main.cpp +++ b/main.cpp @@ -9,6 +9,6 @@ int main() cin >> a >> b; cout << "A + B = " << a + b << '\n' << "A - B = " << a - b << '\n'; - << "A * B = " << a * b << '\n'; + << "A * B = " << a * b << '\n'; } Предпоследняя строчка была выдела зелёным цветом, что показывает её как добавленную 11.1 Просмотрел разницу между самым первым коммитом и коммитом, добавляющим вывод разности Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git diff HEAD HEAD~4 diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 9d83ebf..0000000 --- a/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -/bin -/obj -*.layout diff --git a/main.cpp b/main.cpp index 3b0a2eb..b4392ec 100644 --- a/main.cpp +++ b/main.cpp @@ -4,11 +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'; - << "A * B = " << a * b << '\n'; - + cout << "Hello world!" << endl; + return 0; } 11.2 Закоммитил изменения в рабочей копии Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -a -m 'code: добавление произведения' [main 8c628e3] code: добавление произведения 1 file changed, 1 insertion(+), 1 deletion(-) 11.3 Откатил предыдущий коммит Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at a782ef8 добавление суммы и разности Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git checkout HEAD -- main.cpp _______________________________________________________________________ 12.1 Создал пару ключей, запустил клиент, загрузил ключ Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ ssh-keygen Generating public/private ed25519 key pair. Enter file in which to save the key (/c/Users/yaros_tm2sc6p/.ssh/id_ed25519 Created directory '/c/Users/yaros_tm2sc6p/.ssh'. Enter passphrase for "/c/Users/yaros_tm2sc6p/.ssh/id_ed25519" (empty for nophrase): Enter same passphrase again: Your identification has been saved in /c/Users/yaros_tm2sc6p/.ssh/id_ed2551 Your public key has been saved in /c/Users/yaros_tm2sc6p/.ssh/id_ed25519.pu The key fingerprint is: SHA256:HsWSzcyMPKN3AgL5If9hs7x7bQpGRUDX+6mqlB9NgP8 Infinioka@MSI The key's randomart image is: +--[ED25519 256]--+ | .. .o.o. | | o.. = X. | | +..o X O. | | o.+= *. | | +o+S o. . | | .++ B o | | =.o.E. | | o.o..+ | | o+++ | +----[SHA256]-----+ Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ eval $(ssh-agent -s) Agent pid 546 Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ ssh-add Identity added: /c/Users/yaros_tm2sc6p/.ssh/id_ed25519 (Infinioka@MSI) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ cat ~/.ssh/id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEG/+qPImzcwtQxLrMTqhTJGjTR3FJCguQNdJ8LVJSDO Infinioka@MSI 12.2 Создал репозиторий под названием cs-lab02 Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ touch README.md Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git init Reinitialized existing Git repository in C:/Users/yaros_tm2sc6p/Рабочий стол/lab02/alice/project/.git/ Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git checkout -b main fatal: a branch named 'main' already exists Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git add README,md fatal: pathspec 'README,md' did not match any files Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git add README.md Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -m 'first commit' [main 152b471] first commit 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git remote add origin git@uit.mpei.ru:SpesivtsevYM/cs-lab02.git Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git push -u origin main The authenticity of host 'uit.mpei.ru (193.233.68.149)' can't be established. ED25519 key fingerprint is SHA256:Q5w0UKEzQKA3J6NyMtjwCLvtAykoxdugIXjx6NwU4NA. This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? Host key verification failed. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git remote add origin git@uit.mpei.ru:SpesivtsevYM/cs-lab02.git error: remote origin already exists. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git push -u origin main The authenticity of host 'uit.mpei.ru (193.233.68.149)' can't be established. ED25519 key fingerprint is SHA256:Q5w0UKEzQKA3J6NyMtjwCLvtAykoxdugIXjx6NwU4NA. This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? Host key verification failed. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git remote set-url origin http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02.git Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git push -u origin main Enumerating objects: 18, done. Counting objects: 100% (18/18), done. Delta compression using up to 20 threads Compressing objects: 100% (15/15), done. Writing objects: 100% (18/18), 2.24 KiB | 764.00 KiB/s, done. Total 18 (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/SpesivtsevYM/cs-lab02.git * [new branch] main -> main branch 'main' set up to track 'origin/main'. _______________________________________________________________________ 13.1 Клонировал проект в каталог bob Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob $ git clone http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02.git project Cloning into 'project'... remote: Enumerating objects: 18, done. remote: Counting objects: 100% (18/18), done. remote: Compressing objects: 100% (15/15), done. remote: Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (18/18), done. Resolving deltas: 100% (2/2), done. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob $ cd project Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git config user.name 'Bob (SpesivtsevYM)' Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git config user.email 'SpesivtsevYM@mpei.ru' Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git commit -a -m 'code: добавление произведения' [main a7aa100] code: добавление произведения 1 file changed, 1 insertion(+), 1 deletion(-) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git push Enumerating objects: 6, done. Counting objects: 100% (6/6), done. Delta compression using up to 20 threads Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 542 bytes | 542.00 KiB/s, done. Total 4 (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/SpesivtsevYM/cs-lab02.git 152b471..a7aa100 main -> main _______________________________________________________________________ 14 На машине Алисы выполнил загрузку изменений Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git fetch remote: Enumerating objects: 6, done. remote: Counting objects: 100% (6/6), done. remote: Compressing objects: 100% (4/4), done. remote: Total 4 (delta 2), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (4/4), 522 bytes | 43.00 KiB/s, done. From http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02 152b471..a7aa100 main -> origin/main 14.1 Убедился, что в рабочей копии изменений не произошло Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * a7aa100 (origin/main, origin/HEAD) code: добавление произведения * 9bcd946 code: добавление произведения * 152b471 (HEAD -> main) first commit * a782ef8 добавление суммы и разности * 16a82c9 build: создание gitignore * b7700a9 code: изменение main * 7aeb695 build: сборка Боба * 27fad3a code: загатовка программы 14.2 Продвинул ветку main к скачанной версии Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git pull --ff-only Updating 152b471..a7aa100 Fast-forward 14.3 От имени Алисы добавил печать деления, сделал коммит и отправил его на сервер и получил новую версию на машине Боба Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -a -m 'code: добавление деления' [main a4d41c0] code: добавление деления 1 file changed, 1 insertion(+), 1 deletion(-) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 20 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 356 bytes | 356.00 KiB/s, done. Total 3 (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/SpesivtsevYM/cs-lab02.git a7aa100..a4d41c0 main -> main _______________________________________________________________________ 15 Сделал поиск максимума у Алисы и минимума у Боба Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git commit -a -m 'code: добавление максимума' [main e746f32] code: добавление максимума 1 file changed, 6 insertions(+) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 20 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 391 bytes | 391.00 KiB/s, done. Total 3 (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/SpesivtsevYM/cs-lab02.git a4d41c0..e746f32 main -> main Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git commit -a -m 'code: добавление минимума' [main 6115af1] code: добавление минимума 1 file changed, 7 insertions(+) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git push To http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/SpesivtsevYM/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. Появление ошибки Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git pull remote: Enumerating objects: 8, done. remote: Counting objects: 100% (8/8), done. remote: Compressing objects: 100% (6/6), done. remote: Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (6/6), 667 bytes | 21.00 KiB/s, done. From http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02 a7aa100..e746f32 main -> origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp Automatic merge failed; fix conflicts and then commit the result. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main|MERGING) $ git log --oneline --decorate --all --graph * 6115af1 (HEAD -> main) code: добавление минимума | * e746f32 (origin/main, origin/HEAD) code: добавление максимума | * a4d41c0 code: добавление деления |/ * a7aa100 code: добавление произведения * 9bcd946 code: добавление произведения * 152b471 first commit * a782ef8 добавление суммы и разности * 16a82c9 build: создание gitignore * b7700a9 code: изменение main * 7aeb695 build: сборка Боба * 27fad3a code: загатовка программы 15.1 Переместил коммит Боба поверх коммита Алисы Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main|MERGING) $ git rebase origin/main main.cpp: needs merge error: cannot rebase: You have unstaged changes. error: additionally, your index contains uncommitted changes. error: Please commit or stash them. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main|MERGING) $ git status On branch main Your branch and 'origin/main' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" if you want to integrate the remote branch with yours) You have unmerged paths. (fix conflicts and run "git commit") (use "git merge --abort" to abort the merge) Unmerged paths: (use "git add ..." to mark resolution) both modified: main.cpp no changes added to commit (use "git add" and/or "git commit -a") Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git commit Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/bob/project (main) $ git push Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 20 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 689 bytes | 689.00 KiB/s, done. Total 6 (delta 4), 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/SpesivtsevYM/cs-lab02.git e746f32..a30bd41 main -> main _______________________________________________________________________ 16. Выполнение заданий с ветками + редактор Vim Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git branch double Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git checkout double M project.cbp Switched to branch 'double' Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (double) $ git commit -a -m 'code: замена на double' warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it [double 701c5e4] code: замена на double 2 files changed, 2 insertions(+), 1 deletion(-) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git fetch remote: Enumerating objects: 10, done. remote: Counting objects: 100% (10/10), done. remote: Compressing objects: 100% (6/6), done. remote: Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (6/6), 669 bytes | 10.00 KiB/s, done. From http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02 e746f32..a30bd41 main -> origin/main Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git pull Updating e746f32..a30bd41 Fast-forward main.cpp | 7 +++++++ 1 file changed, 7 insertions(+) Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git status On branch main Your branch is up to date with 'origin/main'. nothing to commit, working tree clean Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * ab1ec1a (HEAD -> main) Merge branch 'double' |\ | * 701c5e4 (double) code: замена на double * | a30bd41 (origin/main, origin/HEAD) Merge branch 'main' of http://uit.mpei.ru/git/SpesivtsevYM/cs-lab02 |\| | * e746f32 code: добавление максимума | * a4d41c0 code: добавление деления * | 6115af1 code: добавление минимума |/ * a7aa100 code: добавление произведения * 9bcd946 code: добавление произведения * 152b471 first commit * a782ef8 добавление суммы и разности * 16a82c9 build: создание gitignore * b7700a9 code: изменение main * 7aeb695 build: сборка Боба * 27fad3a code: загатовка программы Infinioka@MSI MINGW64 ~/Рабочий стол/lab02/alice/project (main) $ git merge double Auto-merging main.cpp Merge made by the 'ort' strategy. main.cpp | 2 +- project.cbp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-)