Отчет по лабораторной работе № 2 "Система контроля версий Git"

Выполнил: Киселёв М. И.
Группа:   А-01-22
Проверил: Козлюк Д. А.

Примечание: работа выполнялась на Windows.

1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02
$

2. Создал каталоги Алисы и Боба, создал каталог "project":

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02
$ mkdir alice

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02
$ mkdir bob

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02
$ cd alice

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice
$ mkdir project

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice
$ cd project

3. Инициализировал репозитарий:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project
$ git init
Initialized empty Git repository in C:/Users/Anchovy/Desktop/lab02/alice/project/.git/

4. Настроил репозитарий Алисы, чтобы коммиты были от ее имени:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git config user.name 'Alice (KiseliovMI)'

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git config user.email 'kiseliovmi@mpei.ru'

5. После создания проекта в репозитарии Алисы, добавил файл main.cpp в индекс:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

6. Выполнил коммит с файлом main.cpp:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'code: заготовка программы'
[main (root-commit) d4143d0] code: заготовка программы
 1 file changed, 9 insertions(+)
 create mode 100644 main.cpp

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "project.cbp"
[main 5c79b2a] project.cbp
 1 file changed, 3 insertions(+), 2 deletions(-)

7. Просмотрел состояние рабочей копии:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git status
On branch main (в ветке main)
Untracked files: (список файлов не включённых в коммит)
  (use "git add <file>..." to include in what will be committed)
        bin/
        obj/
        project.cbp

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

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "project.cbp"
[main 054e84d] project.cbp
 1 file changed, 2 insertions(+)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git status
On branch main
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        project.cbp
        project.depend

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

8. Создал закрытый ключ:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Anchovy/.ssh/id_rsa):
/c/Users/Anchovy/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Anchovy/.ssh/id_rsa
Your public key has been saved in /c/Users/Anchovy/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:URcf+uwNrBmXSPoQEd0b+dxC0/4p5T7wLZNF1Qd/L9o Anchovy@DESKTOP-RK8AGV4
The key's randomart image is:
+---[RSA 3072]----+
|          +oooo+.|
|         . o.o*o=|
|        . . o..B*|
|         . + =ooO|
|        S o o @o+|
|           o @ *o|
|            = Eoo|
|              ++.|
|               o.|
+----[SHA256]-----+

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 127

9. Загрузил ключ:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ ssh-add
Enter passphrase for /c/Users/Anchovy/.ssh/id_rsa:
Identity added: /c/Users/Anchovy/.ssh/id_rsa (Anchovy@DESKTOP-RK8AGV4)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqlim4Qjhpk242c7c01B2splOrJKtyC1rDsokDlew17NCC/jqAruKjdi+UFrDBkqHZCu25TYhdqASQEHECkX8GAdPDhqHxPMsYHrwyVnuzTtbWHBB/wigDfJx02PxbFLNwJpCSGOag/x3ReqjBa+XClRJ8VRiO9SGBMs2zziZ1fJagc0SGVtV5Bd4+EyTQnl0ZU0lwIa/sSW0BLyObmSuyKSPddBTVT7XwjImNmmoccOa+jkYiFfHiuDJ+I1vGAAqEtqV5jBx1noLaZWN6Mh2yTzAinYbdAxR+SN64C8u3mNHG/4P95nvmac7v5i1xZdrpXMuCCIAFn7pkTR7s/jY8oDyqXJoGXptdJ3JIeLfzEYD42reGHxtvyke4MpIwXvhayzAVtY3ujE0vBECoHgdZG0+QQ0gFR5aq6O86rw3c3hhkr1qldtzzdn4qULk5Q2pk3iso93a8IZNx7k2bxfI5YkAActla9ZsZ3JynWxBI/q9SaMJBjK7+9MCetu2i+GE= Anchovy@DESKTOP-RK8AGV4

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

10. Выполнил коммит с .gitignore:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'git: игнорирование'
On branch main
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        project.cbp
        project.depend

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

11. Сделал push существующего репозитория из командной строки:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git remote add origin git@uit.mpei.ru:KiseliovMI/cs-lab02.git

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git push -u origin main
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (9/9), 927 bytes | 231.00 KiB/s, done.
Total 9 (delta 1), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:KiseliovMI/cs-lab02.git
 * [new branch]      main -> main
branch 'main' set up to track 'origin/main'.

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ gir remote -v
bash: gir: command not found

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git remote -v
origin  git@uit.mpei.ru:KiseliovMI/cs-lab02.git (fetch)
origin  git@uit.mpei.ru:KiseliovMI/cs-lab02.git (push)

12. Выполнил загрузку изменений:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git fetch
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 309 bytes | 28.00 KiB/s, done.
From uit.mpei.ru:KiseliovMI/cs-lab02
   054e84d..6820e91  main       -> origin/main

13. Просмотрел историю всех веток:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* 6820e91 (origin/main) code: умножение
* 054e84d (HEAD -> main) project.cbp
* 5c79b2a project.cbp
* d4143d0 code: заготовка программы

14. Продвинул ветку main к скачанной версии:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git pull --ff-only
Updating 054e84d..6820e91
Fast-forward
 main.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

15. Выполнил коммит с делением и отправил его на сервер:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'code: деление'
[main 2c5da37] code: деление
 1 file changed, 2 insertions(+), 1 deletion(-)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 321 bytes | 321.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:KiseliovMI/cs-lab02.git
   6820e91..2c5da37  main -> main

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

16. Выполнил коммит с поиском максимума и отправил его на сервер:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'code: максимум'
[main afac10a] code: максимум
 1 file changed, 6 insertions(+)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 340 bytes | 340.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:KiseliovMI/cs-lab02.git
   2c5da37..afac10a  main -> main

17. Создал ветку double и переключился на неё:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git branch double

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git checkout double
Switched to branch 'double'

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (double)
$ git add main.cpp

18. Выполнил коммит с заменой типа перемнных:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (double)
$ git commit -m 'code: дабл'
[double 7080e44] code: дабл
 1 file changed, 1 insertion(+), 1 deletion(-)

19. Переключился на ветку main и выполнил загрузку изменений: 

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (double)
$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git fetch

20. Слил ветку double в main:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git merge double
Updating afac10a..7080e44
Fast-forward
 main.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

21. Отправил измения на сервер:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 296 bytes | 296.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:KiseliovMI/cs-lab02.git
   afac10a..7080e44  main -> main

22. Посмотрел журнал репозитария

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log
commit 53ded9eee9939a290b366a6e4edb00d628e6e88a (HEAD -> main, origin/main)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Apr 24 11:24:34 2023 +0300

    README

commit 7080e4474535c62634577fbcfbf99635732a5c98 (double)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 12:03:26 2023 +0300

    code: дабл

commit afac10a67eb45a40499aa7c48f7cd03fe775eb19
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:38:55 2023 +0300

    code: максимум

commit 2c5da3729985cb74ef7be400cf8c8818266d0f35
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:28:38 2023 +0300

    code: деление

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --stat
commit 53ded9eee9939a290b366a6e4edb00d628e6e88a (HEAD -> main, origin/main)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Apr 24 11:24:34 2023 +0300

    README

 README.txt | 479 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 479 insertions(+)

commit 7080e4474535c62634577fbcfbf99635732a5c98 (double)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 12:03:26 2023 +0300

    code: дабл

 main.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit afac10a67eb45a40499aa7c48f7cd03fe775eb19
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:38:55 2023 +0300

    code: максимум

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate
53ded9e (HEAD -> main, origin/main) README
7080e44 (double) code: дабл
afac10a code: максимум
2c5da37 code: деление
6820e91 code: умножение
054e84d project.cbp
5c79b2a project.cbp
d4143d0 code: заготовка программы

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* 53ded9e (HEAD -> main, origin/main) README
* 7080e44 (double) code: дабл
* afac10a code: максимум
* 2c5da37 code: деление
* 6820e91 code: умножение
* 054e84d project.cbp
* 5c79b2a project.cbp
* d4143d0 code: заготовка программы

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --grep "code:"
commit 7080e4474535c62634577fbcfbf99635732a5c98 (double)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 12:03:26 2023 +0300

    code: дабл

commit afac10a67eb45a40499aa7c48f7cd03fe775eb19
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:38:55 2023 +0300

    code: максимум

commit 2c5da3729985cb74ef7be400cf8c8818266d0f35
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:28:38 2023 +0300

    code: деление

commit 6820e915aa235b805b9353ead0e3247b2b19cd9d
Author: Bob (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 11:25:12 2023 +0300

    code: умножение

23. Просмотрел последний коммит:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show HEAD
commit 53ded9eee9939a290b366a6e4edb00d628e6e88a (HEAD -> main, origin/main)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Apr 24 11:24:34 2023 +0300

    README

diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..3593af0
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,479 @@
+Отчет по лабораторной работе № 2 "Система контроля версий Git"
+
+Выполнил: Киселёв М. И.
+Группа:   А-01-22
+Проверил: Козлюк Д. А.
+
+Примечание: работа выполнялась на Windows.
+
+1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
+

24. Просмотрел предпоследний коммит:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show HEAD~1
commit 7080e4474535c62634577fbcfbf99635732a5c98 (double)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Mar 27 12:03:26 2023 +0300

    code: дабл

diff --git a/main.cpp b/main.cpp
index 4dc18bd..2ac828f 100644
--- a/main.cpp
+++ b/main.cpp
@@ -5,7 +5,7 @@ using namespace std;
 int main()
 {
     cout << "Enter A and B: ";
-    int a, b;
+    double a, b;
     cin >> a >> b;
     cout << "A + B = " << a + b << '\n'
          << "A - B = " << a - b << '\n'

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show main
commit 53ded9eee9939a290b366a6e4edb00d628e6e88a (HEAD -> main, origin/main)
Author: Alice (KiseliovMI) <kiseliovmi@mpei.ru>
Date:   Mon Apr 24 11:24:34 2023 +0300

    README

diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..3593af0
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,479 @@
+Отчет по лабораторной работе № 2 "Система контроля версий Git"
+
+Выполнил: Киселёв М. И.
+Группа:   А-01-22
+Проверил: Козлюк Д. А.
+
+Примечание: работа выполнялась на Windows.
+
+1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
+

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add text.txt

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "text"
[main 864a799] text
 1 file changed, 1 insertion(+)
 create mode 100644 text.txt

25. Просмотрел изменения в рабочей версии:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git diff HEAD~1
diff --git a/text.txt b/text.txt
new file mode 100644
index 0000000..d800886
--- /dev/null
+++ b/text.txt
@@ -0,0 +1 @@
+123
\ No newline at end of file

26. Вернулся к предыдущему коммиту:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at 53ded9e README

Компьютер Боба:

1. Клонировал проект:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob
$ git clone git@uit.mpei.ru:KiseliovMI/cs-lab02.git project
Cloning into 'project'...
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
remote: Enumerating objects: 9, done.
remote: Counting objects: 100% (9/9), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 9 (delta 1), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (9/9), done.
Resolving deltas: 100% (1/1), done.

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob
$ cd project

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git config git config user.name 'Bob (KiseliovMI)'
usage: git config [<options>]

Config file location
    --global              use global config file
    --system              use system config file
    --local               use repository config file
    --worktree            use per-worktree config file
    -f, --file <file>     use given config file
    --blob <blob-id>      read config from given blob object

Action
    --get                 get value: name [value-pattern]
    --get-all             get all values: key [value-pattern]
    --get-regexp          get values for regexp: name-regex [value-pattern]
    --get-urlmatch        get value specific for the URL: section[.var] URL
    --replace-all         replace all matching variables: name value [value-pattern]
    --add                 add a new variable: name value
    --unset               remove a variable: name [value-pattern]
    --unset-all           remove all matches: name [value-pattern]
    --rename-section      rename section: old-name new-name
    --remove-section      remove a section: name
    -l, --list            list all
    --fixed-value         use string equality when comparing values to 'value-pattern'
    -e, --edit            open an editor
    --get-color           find the color configured: slot [default]
    --get-colorbool       find the color setting: slot [stdout-is-tty]

Type
    -t, --type <type>     value is given this type
    --bool                value is "true" or "false"
    --int                 value is decimal number
    --bool-or-int         value is --bool or --int
    --bool-or-str         value is --bool or string
    --path                value is a path (file or directory name)
    --expiry-date         value is an expiry date

Other
    -z, --null            terminate values with NUL byte
    --name-only           show variable names only
    --includes            respect include directives on lookup
    --show-origin         show origin of config (file, standard input, blob, command line)
    --show-scope          show scope of config (worktree, local, global, system, command)
    --default <value>     with --get, use default value when missing entry

2. Настроил репозитарий Боба:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git config user.name 'Bob (KiseliovMI)'

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git config user.email 'kiseliovmi@mpei.ru'

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git add main.cpp

3. Выполнил коммит с добавлением умножения:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git commit -m 'code: умножение'
[main 6820e91] code: умножение
 1 file changed, 2 insertions(+), 1 deletion(-)

4. Отправил коммит на сервер:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git push
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 329 bytes | 329.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:KiseliovMI/cs-lab02.git
   054e84d..6820e91  main -> main

5. Выполнил загрузку изменений:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git fetch
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 301 bytes | 13.00 KiB/s, done.
From uit.mpei.ru:KiseliovMI/cs-lab02
   6820e91..2c5da37  main       -> origin/main

6. Просмотрел историю всех веток:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git log --oneline --decorate --all --graph
* 2c5da37 (origin/main, origin/HEAD) code: деление
* 6820e91 (HEAD -> main) code: умножение
* 054e84d project.cbp
* 5c79b2a project.cbp
* d4143d0 code: заготовка программы

7. Продвинул ветку main к скачанной версии:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git pull --ff-only
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
Updating 6820e91..2c5da37
Fast-forward
 main.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git add main.cpp

8. Выполнил коммит с поиском минимума:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git commit -m 'code: минимум'
[main a6f6022] code: минимум
 1 file changed, 6 insertions(+)

9. Отправил коммит на сервер:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git push
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
To uit.mpei.ru:KiseliovMI/cs-lab02.git
 ! [rejected]        main -> main (fetch first)
error: failed to push some refs to 'uit.mpei.ru:KiseliovMI/cs-lab02.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

10. Выполнил загрузку изменений:

Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)
$ git fetch
Enter passphrase for key '/c/Users/Anchovy/.ssh/id_rsa':
remote: Enumerating objects: 5, done.
[detached HEAD 5f3a51c] code: минимум
 1 file changed, 6 insertions(+)% (2/2), done.
Successfully rebased and updated refs/heads/main.
Unpacking objects: 100% (3/3), 320 bytes | 13.00 KiB/s, done.
Anchovy@DESKTOP-RK8AGV4 MINGW64 ~/Desktop/lab02/bob/project (main)