## подготовка программы: создаем папки Алисы и Боба, папки проектов и проверяем работу функций denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir alise denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir bob denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02 $ cd alise denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise $ mkdir project denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise $ cd project denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project $ cd .. denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise $ cd project ## создаём репозитарий в папке Алиса\проект и преименовываем его denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project $ git init Initialized empty Git repository in C:/Users/denvo/OneDrive/Рабочий стол/lab02/alise/project/.git/ denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (master) $ git branch -m main ##регестриумся в гите denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git config user.name 'VolodinDV' denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git config user.email 'VolodinDV@mpei.ru' denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/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) ## создаём код в кодблокс и добавляем его в репозитарий denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git add main.cpp denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/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 ##пишем загатовку в коде, комитим её и добавляем файл проекта denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -m 'code: заготовка программы' [main (root-commit) cc43025] code: заготовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cpp denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/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 denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -m 'build:добавлен файл проекта' [main 53b87b9] buil:добавлен файл проекта 1 file changed, 40 insertions(+) create mode 100644 project.cbp denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/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") ## изменяем код проект и комитим его denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git add main.cpp denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -m "..." [main 68fac4c] ... 1 file changed, 4 insertions(+), 6 deletions(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git add -u denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -m "..." [main 2e16abf] ... 1 file changed, 1 insertion(+) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -a -m "..." [main dc35256] ... 1 file changed, 1 insertion(+), 1 deletion(-) ## игнорируем файлы obj,bin,layout denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) .gitignore obj/ project.layout nothing added to commit but untracked files present (use "git add" to track) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) .gitignore nothing added to commit but untracked files present (use "git add" to track) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git add .gitignore denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -m 'git: игнорирование файлов' [main 2dd7515] git: игнорирование файлов 1 file changed, 3 insertions(+) create mode 100644 .gitignore ## проверяем свои комиты denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log commit 2dd7515bc3aa6c0ab0f04a8017ed1eb7cf61b724 (HEAD -> main) Author: VolodinDV Date: Sun Mar 24 14:54:35 2024 +0300 git: игнорирование файлов commit dc35256044e147f30b1e5290d656e38c2da9aa2b Author: VolodinDV Date: Sun Mar 24 14:10:22 2024 +0300 code: добавляем произведение commit 2e16abfc8f8a6548ef687f13d8705202ba4fbb1f Author: VolodinDV Date: Sun Mar 24 14:07:58 2024 +0300 code: добавляем разность commit 68fac4cb260ac5bc1bc2fa679fc7e1bcdd1cdc21 Author: VolodinDV Date: Sun Mar 24 14:06:30 2024 +0300 code: добавляем сумму commit 53b87b9fe06c14ca508a4959a30e546917c5f775 denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --stat commit 2dd7515bc3aa6c0ab0f04a8017ed1eb7cf61b724 (HEAD -> main) Author: VolodinDV Date: Sun Mar 24 14:54:35 2024 +0300 git: игнорирование файлов .gitignore | 3 +++ 1 file changed, 3 insertions(+) commit dc35256044e147f30b1e5290d656e38c2da9aa2b Author: VolodinDV Date: Sun Mar 24 14:10:22 2024 +0300 code: добавляем разность main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2e16abfc8f8a6548ef687f13d8705202ba4fbb1f Author: VolodinDV Date: Sun Mar 24 14:07:58 2024 +0300 code: добавляем сумму main.cpp | 1 + denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --oneline --decorate 2dd7515 (HEAD -> main) git: игнорирование файлов dc35256 code: добавляем произведение 2e16abf code: добавляем разность 68fac4c code: добавляем сумму 53b87b9 build:добавлен файл проекта cc43025 code: заготовка программы denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --oneline --decorate --all --graph * 2dd7515 (HEAD -> main) git: игнорирование файлов * dc35256 code: добавляем произведение * 2e16abf code: добавляем разность * 68fac4c code: добавляем сумму * 53b87b9 build:добавлен файл проекта * cc43025 code: заготовка программы denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --grep 'build' commit 53b87b9fe06c14ca508a4959a30e546917c5f775 Author: VolodinDV Date: Sun Mar 24 13:57:22 2024 +0300 build:добавлен файл проекта denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log -- project.cbp commit 53b87b9fe06c14ca508a4959a30e546917c5f775 Author: VolodinDV Date: Sun Mar 24 13:57:22 2024 +0300 build:добавлен файл проекта ## проверяем структуру программы denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git show HEAD~2 commit 2e16abfc8f8a6548ef687f13d8705202ba4fbb1f Author: VolodinDV Date: Sun Mar 24 14:07:58 2024 +0300 code: добавляем сумму diff --git a/main.cpp b/main.cpp index b634d3f..0b3c380 100644 --- a/main.cpp +++ b/main.cpp @@ -4,4 +4,5 @@ int main(){ int a,b; cout<<"enter A and B"; cin>> a>>b; + cout<<"A+B= "<> a>>b; - cout<<"A+B= "<> a>>b; + cout<<"A+B= "< main branch 'main' set up to track 'origin/main'. ## выгружаем изменения с сайта denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/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 2), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 277 bytes | 55.00 KiB/s, done. From http://uit.mpei.ru/git/VolodinDV/cs-lab02 516fba8..391bee2 main -> origin/main denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --oneline --decorate --all --graph * 391bee2 (origin/main) ... * 516fba8 (HEAD -> main) first commit * 2dd7515 git: игнорирование файлов * dc35256 ... * 2e16abf ... * 68fac4c ... * 53b87b9 buil:добавлен файл проекта * cc43025 code: заготовка программы ## изменяем код и отправляем на сайт denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git pull --ff-only Updating 516fba8..391bee2 Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -a -m "..." warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it [main 405b27c] ... 3 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 lab2.txt denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git push Enumerating objects: 7, done. Counting objects: 100% (7/7), done. Delta compression using up to 12 threads Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 406 bytes | 406.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/VolodinDV/cs-lab02.git 391bee2..405b27c main -> main denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git commit -a -m "..." [main 981ccaf] ... 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 361 bytes | 361.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/VolodinDV/cs-lab02.git 405b27c..981ccaf main -> main denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git branch double denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git checkout double Switched to branch 'double' denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (double) $ git commit -a -m "..." [double 8c01bd0] ... 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git pull Already up to date. denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git push Everything up-to-date denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git log --oneline --decorate --all --graph * 8c01bd0 (double) ... * 981ccaf (HEAD -> main, origin/main) ... * 405b27c ... * 391bee2 ... * 516fba8 first commit * 2dd7515 git: игнорирование файлов * dc35256 ... * 2e16abf ... * 68fac4c ... * 53b87b9 buil:добавлен файл проекта * cc43025 code: заготовка программы ## соединяем с бобом denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git merge double Updating 981ccaf..8c01bd0 Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 337 bytes | 337.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/VolodinDV/cs-lab02.git 981ccaf..8c01bd0 main -> main ## выгружаем репозитарий с сайта в папку боба denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ git clone http://uit.mpei.ru/git/VolodinDV/cs-lab02.git project Cloning into 'project'... remote: Enumerating objects: 21, done. remote: Counting objects: 100% (21/21), done. remote: Compressing objects: 100% (18/18), done. remote: Total 21 (delta 3), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (21/21), done. Resolving deltas: 100% (3/3), done. ## регестрируемся в репозитарии боба denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ cd project denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.name 'VolodinDV' denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.email 'VolodinDV@mpei.ru' ##изменяем код и отправляем на сайт denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -a -m "..." [main 391bee2] ... 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 297 bytes | 297.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/VolodinDV/cs-lab02.git 516fba8..391bee2 main -> main denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git pull remote: Enumerating objects: 7, done. remote: Counting objects: 100% (7/7), 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), 386 bytes | 42.00 KiB/s, done. From http://uit.mpei.ru/git/VolodinDV/cs-lab02 391bee2..405b27c main -> origin/main Updating 391bee2..405b27c Fast-forward lab2.txt | 0 main.cpp | 2 +- project.cbp | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 lab2.txt denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -a -m "..." [main 1bcb74f] ... 1 file changed, 1 insertion(+), 1 deletion(-) denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push To http://uit.mpei.ru/git/VolodinDV/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/VolodinDV/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. ## выгружаем с сайта новый код, чтобы объединить denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/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), 341 bytes | 56.00 KiB/s, done. From http://uit.mpei.ru/git/VolodinDV/cs-lab02 405b27c..981ccaf main -> origin/main denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log --oneline --decorate --all --graph * 1bcb74f (HEAD -> main) ... | * 981ccaf (origin/main, origin/HEAD) ... |/ * 405b27c ... * 391bee2 ... * 516fba8 first commit * 2dd7515 git: игнорирование файлов * dc35256 ... * 2e16abf ... * 68fac4c ... * 53b87b9 buil:добавлен файл проекта * cc43025 code: заготовка программы denvo@DESKTOP-7V8QNKH MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git rebase origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp error: could not apply 1bcb74f... ... 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 --abort". Could not apply 1bcb74f... ...