user@mpei-dc-win7 MINGW32 /c/Users/user/Desktop/lab02       // Начало работы с git
$

mkdir alice                                                 // Создание папок Алисы и Боба
mkdir bob

cd alice                                                    // Переход в папку Алисы

git init                                                    // Создаём репозитарий Алисы

git config user.name 'Alice (FadeevIS)'                     // Указываем имя пользователя и его email
git config user.email 'FadeevIS@mpei.ru'

git status                                                  // Проверка состояния рабочей копии

On branch master                                            // Рассматривается основная ветка (мастер)

No commits yet                                              // На данный момент здесь нет коммитов, но есть неотслеживаемые файлы, которые можно зафиксировать соотв. командой

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        main.cpp
        project.cbp

git add main.cpp                                            // Теперь файл main.cpp отслеживается git

git commit -m 'code: заготовка программы'                   // Коммитим main.cpp
[master (root-commit) 6042e49] code: заготовка программы    // Наш файл, обладающий хэшом 6042e49 "закоммичен"
 1 file changed, 9 insertions(+)
 create mode 100644 main.cpp

git add project.cbp                                         // Придаём файлу project.cbp индекс

git commit -m 'build: добавлен файл проекта'                // Коммитим project.cbp
[master 48f537c] build: добавлен файл проекта
 1 file changed, 40 insertions(+)
 create mode 100644 project.cbp

// Вносим нужные изменения в файл main.cpp

git status                                                  // Проверяем состояние репозитария и обнаруживаем изменения
On branch master
Changes not staged for commit:                              // Изменения не являются зафиксированными. Можно закоммитить их, используя предлагаемые команды
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   main.cpp

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        bin/
        obj/

no changes added to commit (use "git add" and/or "git commit -a")

// Создание файла .gitignore для игнорирования каталогов bin и obj

// Теперь при запросе git status он скрывает данные каталоги:
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        project.depend

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

git add .gitignore

git commit -m 'git: Игнорирование каталогов bin и obj'       //Коммит изменений
[master 147cbd4] git: Игнорирование каталогов bin и obj
 1 file changed, 2 insertions(+)
 create mode 100644 .gitignore

//-------------------------------------------------------------------------- Вывод истории изменения файлов. Указывается Автор(имя и email), дата и сами изменения
git log --stat
commit 147cbd496886b0617a95857d7584945000326f2d (HEAD -> master)
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 16:12:36 2023 +0300

    git: Игнорирование каталогов bin и obj

 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 85cf71c30642e259dc463a8502c0787e355d6c3a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:52:01 2023 +0300

    Изменение формата вывода суммы и разности

 main.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c9d3ba3b0945514c0ac7e696c316fe2be066eaee
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:49:12 2023 +0300

    Добавлен вывод суммы
:...skipping...
commit 147cbd496886b0617a95857d7584945000326f2d (HEAD -> master)
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 16:12:36 2023 +0300

    git: Игнорирование каталогов bin и obj

 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 85cf71c30642e259dc463a8502c0787e355d6c3a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:52:01 2023 +0300

    Изменение формата вывода суммы и разности

 main.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c9d3ba3b0945514c0ac7e696c316fe2be066eaee
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:49:12 2023 +0300

    Добавлен вывод суммы

 main.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a16784988963b38cd4fe7786402966ef162a53a0
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:46:38 2023 +0300

    Добавлен вывод разности

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

commit f356d69707cfe4c4736f2992f5bff1daaa61ab74
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:44:30 2023 +0300

    Добавлен вывод разности

 main.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 48f537c88990e20c1e72a9be596ad15f0893e80a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 14:59:07 2023 +0300

    build: добавлен файл проекта

 project.cbp | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

commit 6042e498d6588df3e1b88c4195b4cfaa09ea1727
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 14:49:51 2023 +0300

    code: заготовка программы

 main.cpp | 9 +++++++++
 1 file changed, 9 insertions(+)
~
~
~
~
~
~
~
~
~
(END)
commit 147cbd496886b0617a95857d7584945000326f2d (HEAD -> master)
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 16:12:36 2023 +0300

    git: Игнорирование каталогов bin и obj

 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 85cf71c30642e259dc463a8502c0787e355d6c3a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:52:01 2023 +0300

    Изменение формата вывода суммы и разности

 main.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c9d3ba3b0945514c0ac7e696c316fe2be066eaee
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:49:12 2023 +0300

    Добавлен вывод суммы
:

git log --oneline --decorate                                          // Более компактный вид
147cbd4 (HEAD -> master) git: Игнорирование каталогов bin и obj
85cf71c Изменение формата вывода суммы и разности
c9d3ba3 Добавлен вывод суммы
a167849 Добавлен вывод разности
f356d69 Добавлен вывод разности
48f537c build: добавлен файл проекта
6042e49 code: заготовка программы

git log --oneline --decorate --all --graph
* 147cbd4 (HEAD -> master) git: Игнорирование каталогов bin и obj
* 85cf71c Изменение формата вывода суммы и разности
* c9d3ba3 Добавлен вывод суммы
* a167849 Добавлен вывод разности
* f356d69 Добавлен вывод разности
* 48f537c build: добавлен файл проекта
* 6042e49 code: заготовка программы

git log --grep 'code:'                                                 // Коммит стемой Code
commit 6042e498d6588df3e1b88c4195b4cfaa09ea1727
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 14:49:51 2023 +0300

    code: заготовка программы

git log -- project.cbp                                                 // коммиты, затрагивающие project.cbp
commit 48f537c88990e20c1e72a9be596ad15f0893e80a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 14:59:07 2023 +0300

    build: добавлен файл проекта

//--------------------------------------------- Просмотр предпоследнего коммита
git show HEAD 85cf71c                                                              // 1-й способ
commit 147cbd496886b0617a95857d7584945000326f2d (HEAD -> master)
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 16:12:36 2023 +0300

    git: Игнорирование каталогов bin и obj

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4c7473d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/bin
+/obj

commit 85cf71c30642e259dc463a8502c0787e355d6c3a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:52:01 2023 +0300

    Изменение формата вывода суммы и разности

diff --git a/main.cpp b/main.cpp
index d48191d..374f5ed 100644
:
-----------------------------------------------------
git show master HEAD~1                                                              // 2-й способ
commit 147cbd496886b0617a95857d7584945000326f2d (HEAD -> master)
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 16:12:36 2023 +0300

    git: Игнорирование каталогов bin и obj

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4c7473d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/bin
+/obj

commit 85cf71c30642e259dc463a8502c0787e355d6c3a
Author: Alice (FadeevIS) <FadeevIS@mpei.ru>
Date:   Mon Mar 6 15:52:01 2023 +0300

    Изменение формата вывода суммы и разности

diff --git a/main.cpp b/main.cpp
index d48191d..374f5ed 100644
:




git diff
diff --git a/main.cpp b/main.cpp
index 374f5ed..5c67490 100644
--- a/main.cpp
+++ b/main.cpp
@@ -8,6 +8,6 @@ int main()
     int a, b;
     cin >> a >> b;
     cout << "A + B = " << a + b << '\n'
-     << "A - B = " << a - b << '\n';
+     << "A - B = " << a - b << '\n' << "A * B = " << a * b << '\n';

 }

 git diff 6042e49 a167849                                                            // Просмотр изменений между 1-м коммитом и коммитом, добавляющим вывод разности
diff --git a/main.cpp b/main.cpp
index b4392ec..03440a0 100644
--- a/main.cpp
+++ b/main.cpp
@@ -4,6 +4,8 @@ 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;
 }
diff --git a/project.cbp b/project.cbp
new file mode 100644
index 0000000..99bb702
--- /dev/null
+++ b/project.cbp
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<CodeBlocks_project_file>

git add main.cpp
git commit -m "code: Добавлено произведение чисел"
[master 27e50a6] code: Добавлено произведение чисел
 1 file changed, 1 insertion(+), 1 deletion(-)

git reset --hard HEAD~1                                                                   
HEAD is now at 147cbd4 git: Игнорирование каталогов bin и obj

// you may type whatever you want
git checkout HEAD -- main.cpp                        //Удаление добавленного комментария, откатив этот файл к состоянию в последнем коммите (HEAD)

--------------------------------------------------------
РАБОТА БОБА


git commit -m 'code: Добавление произведения чисел'
[master d26c94e] code: Добавление произведения чисел
 1 file changed, 1 insertion(+), 1 deletion(-)

--------------------------------------------------------
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), 405 bytes | 50.00 KiB/s, done.
From uit.mpei.ru:FadeevIS/cs-lab02
   147cbd4..d26c94e  master     -> origin/master


git log --oneline --decorate --all --graph                            // Просмотр истории
* d26c94e (origin/master) code: Добавление произведения чисел
* 147cbd4 (HEAD -> master) git: Игнорирование каталогов bin и obj
* 85cf71c Изменение формата вывода суммы и разности
* c9d3ba3 Добавлен вывод суммы
* a167849 Добавлен вывод разности
* f356d69 Добавлен вывод разности
* 48f537c build: добавлен файл проекта
* 6042e49 code: заготовка программы

----------------------------------------------------------------

$ git commit -m 'code: Добавление частного чисел'                           // Добавление в проект: вывод частного чисел (от Алисы) 
[master 45648c4] code: Добавление частного чисел
 1 file changed, 3 insertions(+), 1 deletion(-)

$ git log --oneline --decorate --all --graph
* 45648c4 (HEAD -> master) code: Добавление частного чисел
* d26c94e (origin/master) code: Добавление произведения чисел
* 147cbd4 git: Игнорирование каталогов bin и obj
* 85cf71c Изменение формата вывода суммы и разности
* c9d3ba3 Добавлен вывод суммы
* a167849 Добавлен вывод разности
* f356d69 Добавлен вывод разности
* 48f537c build: добавлен файл проекта
* 6042e49 code: заготовка программы

$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 433 bytes | 433.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:FadeevIS/cs-lab02.git
   d26c94e..45648c4  master -> master

-------------------------------------------------------------------------

$ git fetch                                                                    // Получение свежей версии Бобом
Enter passphrase for key '/c/Users/User/.ssh/id_rsa':
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), 413 bytes | 31.00 KiB/s, done.
From uit.mpei.ru:FadeevIS/cs-lab02
   d26c94e..45648c4  master     -> origin/master

User@▒▒▒▒▒▒▒▒▒ MINGW64 ~/Desktop/lab-02/bob/project (master)
$ git pull --ff-only
Enter passphrase for key '/c/Users/User/.ssh/id_rsa':
Updating d26c94e..45648c4
Fast-forward
 main.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--------------------------------------------------------------- // Добавление минимума к максимуму. Ошибка,
                                                                   тк ветка main локального репозитария разошлась с веткой origin/main, то есть с веткой main на сервере.
$ git push
Enter passphrase for key '/c/Users/User/.ssh/id_rsa':
To uit.mpei.ru:FadeevIS/cs-lab02.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'uit.mpei.ru:FadeevIS/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.



Описание
No description provided
Readme 34 KiB
Languages
C++ 100%