Git: You Can Go Back in Time, Only with Git

This article was written as an Individual Review assignment for PPL Computer Science Universitas Indonesia 2021

Intermezzo

There is a group of students who are making a project. They were so new to this that they had no project experience at all. The project included here is a web-based project that will be used for public use.

smile from GIPHY

Start with WHY: Why using Git?

Why should we use Git? is it really important? the answer is yes and yes very important! For software developers, using Git is a game-like checkpoint that can save us when there are unwanted events such as push errors, merge errors, etc. Not only this, there are lots of benefits of Git to know before starting our work on software development. In a real world project, there will be many developers working in parallel. A version control is necessary to ensure that there are no code conflicts between each member participating in the repository

What is Git?

Git is a version control that functions to track every activity carried out in our repository, from changing file names to changing file contents. All activities, no matter how small the changes you make, will be recorded in Git. The advantage of Git is that we can work with many people in one repository. Git really supports collaboration. Where each person assigned to a repository will be able to see all activities carried out in the repository by other members.

How to use Git

On this occasion, to make it easier to imagine, I will explain how to use Git with an example of the implementation I used in my PPL group project. I will divide it into two points, namely the first point is about the Git Manual contains guidelines for using Git and Git Implementation in my group project PPL.

Git Manual

1. git init 
2. git clone <url_repo>
3. git add <file_name>
4. git pull <remote_name>
5. git push <remote_name> <branch_name>
6. git merge
source: https://www.atlassian.com/git/tutorials/using-branches/git-merge
7. git rebase
source: https://www.atlassian.com/git/tutorials/rewriting-history/git-rebase
8. git revert
source: https://git.logikum.hu/tutorials/reset-checkout-revert/cl-revert
9. git stash
source: https://www.maixuanviet.com/wp-content/uploads/2020/05/git-stash.png
10. git remote add <remote_name> <url_link>
11. git checkout <branch_name>
12. git branch <branch_name>
13. git commit -m <“message”>

Git Implementation

The implementation of Git in working on my group projects really helped me collaborate with members of my team, especially during this pandemic, where we rarely get to meet face to face. There are several Git implementations that have been very useful in the course of our project, there is:

Source by Panduan Git PPL 2021
  • Branch Staging
    Staging branch It is the main branch associated with the development process. This banch will store the source code of the work of each developer that is collected in one place.
  • Branch PBI[1..n]
    Is a branch (branch) for the implementation of a Product Backlog Item taken during a Sprint.
  • Branch Hotfix
    It is a branch of the master branch that is created if there is a bug or error in the master branch. The hotfix branch is used as a place to fix bugs (bug fixing) that occurred in the master branch.
  • Branch coldfix
    This is a branch created to rollback (remove all changes from all product backlog item branches).
Branch in our PPL Project 2021
Screenshot of Regular Meeting on Zoom

References