Skip to content

etosneks/lab02

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 

Repository files navigation

Лабораторная работа №2

Часть 1

  1. Создаю удаленный репозиторий
  2. Создаю локальный репозиторий
  3. Создаю файл
    touch hello_world.cpp
    Реализую программу:
    #include <iostream>
    using namespace std;
    int main() 
    {
      cout << "Hello, World" << endl;
      return 0;
    }
    
  4. Добавляю этот файл в локальную копию репозитория:
    git add h*
  5. Закомичу изменения:
    git commit -m "added hello_world.cpp"
  6. Отредактирую файл hello_world.cpp: #include <iostream> using namespace std; int main() { string name; cout << "Enter your name"; cin << name; cout << "Hello World from " << name << endl; return 0; }
  7. Закоммичу новую версию программы:
    git commit -am "added name"
  8. Запушу изменения в удалённый репозиторий:
    git push -u origin master
    9)Проверю, что история коммитов доступна в удалённом репозитории

Часть 2

  1. В локальной копии репозитория создам ветку patch1 и перейду в неё:
    git checkout -b patch1
  2. Отредактирую файл hello_world.cpp:
    #include <iostream>
    int main() {
      string name;
      cout << "Enter your name"; 
      cin << name;
      cout << "Hello World from " << name << endl;
      return 0;
    }
    
  3. Закоммичу изменения:
    $ git commit -am "removed using namespace std line"
    Запишу изменения в удаленный репозиторий:
    $ git push -u origin HEAD
  4. Проверю, что ветка доступна в удаленном репозитории
  5. Создам PR patch1 -> master
  1. В локальном репозитории, находясь в ветке patch1, отредактирую файл hello_world.cpp:
    #include <iostream>
    using  namespace std;
    int main() {
      string name;
      cout << "Enter your name"; 
      cin << name;
      cout << "Hello World from " << name << endl;
      return 0;
    }
    // комментарий:) 
    
  2. Закомичу изменения:
    $ git commit -am "added comment"
    Запишу изменения в удаленный репозиторий:
    $ git push -u origin HEAD
  3. Проверю, что новые изменения есть в созданном на шаге 5 pull-request
  4. Выполню в удаленном репозитории слияние PR patch1 -> master и удалю ветку patch1 в удаленном репозитории
  5. Выполню pull в локальном репозитории:
    $ git pull
  6. Посмотрю историю в локальной версиит ветки:
    $ git log --oneline --graph --decorate --all
  7. Удалю локальную ветку patch1:
    $ git checkout master
    $ git pull
    $ git branch -d patch1

Часть 3

  1. Создам новую локальную ветку patch2
  2. Скачаю пакет clang-format:
    sudo apt install clang-format
    Изменю code style:
    clang-format -style=Mozilla /home/etosneks/lab02/hello_world.cpp
  3. Закомичу изменения:
    $ git commit -am "changed code style"
    Запишу изменения в удаленный репозиторий:
    $ git push -u origin HEAD Создам PR patch2 -> master
  4. В удаленном репозитории в ветке master изменю комментарий:

    //комментарий:) -> //комментарий!!!

  5. Проверю, что в pull-request появились конфликты
  6. $ git pull
    $ git rebase master
  7. Сделаю force push в ветку patch2:
    $ git push origin patch2 --force
  8. Проверю, что в PR пропали конфликты
  9. Вмержу PR patch2 -> master

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages