---
# System prepended metadata

title: Untitled

---

<style>
    .header-title {
        text-align: center;
        color: #005AB5 !important;
    }
</style>

<h1 class="header-title">Practice I 20230306</h1>

## Scenario

> **FoodTracker** is a project implemented by a team with 5 members.
> At the beginning of the project, each member did their own duty, so there aren't major problems until they integrate the project code in one codebase.
> After project integraton, they realized the project had been lacking a version control, so they start using the `git` to solve version control issues.
> Unfortunately, they noticed some issues after apply `git`.
> Please help them solve those that they are experiencing.

## Initial Graph

![Initial Graph](https://i.imgur.com/YGPZu5P.png)

## Troubleshooting
>
> **Notice:**
>
> - Complete each task in order.
> - Git graph must be same with the following image in each problem.
> - Kindly record the command or describe the way for each step. For example:
    1. `git checkout develop`
    2. `git reset HEAD~3 --soft`
    3. `git commit`
    4. Write new commit message.

1. Solve commit typo
   - **Description:** Reviewer noticed that there is one typo in the commit message. (Correct word is `feat` not `faet`).
   - **Affected Branch:**
     - `feature/main-function-development`
   - **Mission:** Correct the commit message without affecting other commits and branches.
![Solve commit typo](https://i.imgur.com/3yFxbSg.png)

1. Adjust branch base
   - **Description:** Reviewer noticed that there are some necessary files are missing in some branch.
   - **Affected Branch:**
      - `feature/login-function-development`
      - `feature/portal-function-development`
      - `feature/main-function-development`
   - **Mission:** Make each feature branch include files from `feature/mail-function-development`.
![Adjust branch base](https://i.imgur.com/E5semyi.png)

1. Merge redundant commits
   - **Description:** Reviewer noticed that there are too many commits in one branch.
   - **Affected Branch:**
     - `feature/portal-function-development`
   - **Mission:** Merge commits without affecting other branches.
![Merge redundant commits](https://i.imgur.com/vpagKte.png)

1. Complete project integration
   - **Description:** After solved the issue in branch, reviewer decide to merge all branches into `develop` to make project be complete.
   - **Affected Branch:**
     - `develop`
   - **Mission**: Merge all necessary feature branch into `develop`.
![Complete project integration](https://i.imgur.com/MOOL0Yt.png)

1. Reinstate
   - **Description:** If there is any error in operation , could you make each branch back to the original state?
   - **Affected Branch:**
     - `develop`
     - `feature/login-function-development`
     - `feature/portal-function-development`
     - `feature/main-function-development`
   - **Mission**: Reset branches as possible as you can.
![Initial Graph](https://i.imgur.com/YGPZu5P.png)
