Cara Mengoperasikan Tools Git

Introduction

Git adalah salah satu software penting dalam suatu pengembangan aplikasi atau website, karena fungsi git sendiri adalah mengatur versi dari source code program kalian ketika memberika tanda baris dan kode mana yang ditambah atau diganti nantinya, dan dalam artikel ini saya akan membahas tentang bagaimana cara kita mengoperasikan tools Git ini.

Prepare

Sebelum mempelajari bagaimana cara mengoperasikan Git, anda terlebih dahulu perlu menginstall aplikasi git di device yang anda gunakan, anda bisa menginstall/memasang Git baik di windows maupun linux, kebetulan saya disini menggunakan System Operasi Windows tapi saya install WSL Ubuntu 20.04 di OS tsb, dan sudah tahu cara untuk basic overflow dan clone.

Cara Mengoperasikan Tools Git

1. Git : Create Fresh Repository

Pada dasarnya anda dapat membuat repository dengan 2 cara, yaitu pertama anda membuat repository local anda sendiri atau anda dapat melakukan cloning dari repository yang sudah ada. Sebelumnya kita sudah belajar melakukan cloning repository dari GitHub account kita, selanjutnya kita akan mencoba membuat repostory dari awal / fresh.

  • Masuk ke dalam direktori yang sudah anda miliki untuk membuat repository, gunakan perintah Git init
$git init fresh1
Initialized empty Git repository in /mnt/d/Github/belajar-git/fresh1/.git/
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ ls -l
total 0
-rwxrwxrwx 1 gunawan gunawan   14 Jul  3 13:09 README.md
drwxrwxrwx 1 gunawan gunawan 4096 Jul  3 20:44 fresh1   
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$      
  • Check status repository kita
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ cd fresh1/
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ touch testing1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ ls
testing1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ git status
On branch master

No commits yet

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

nothing added to commit but untracked files present (use "git add" to track)
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ 

Jika kita menambahnkan file maka dalam status akan terlihat bahwa ada file baru yang tidak tercheck

  • Add file yang sudah kita buat tsb ke dalam staging area agar terindex oleh git.
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ git add testing1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   testing1.txt

  • Setelah berhasil melakukan penambahan file tsb, selanjutnya adalah commit di repo kita dan jangan lupa tambahkan commit kita.
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/fresh1$ git commit -m 'file pertama project testing1'
[master (root-commit) 9c14b58] file pertama project testing1
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 testing1.txt
  • Kemudian push file ke repository yang sudah kita buat di GitHub
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "add file fresh1"

[master a780a40] add file fresh1
 1 file changed, 1 insertion(+)
 create mode 160000 fresh1

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add .

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git push
Username for 'https://github.com': gunawan-d
Password for 'https://gunawan-d@github.com': 
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 254 bytes | 127.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To https://github.com/gunawan-d/belajar-git.git
   d11d54a..a780a40  master -> master

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ 
  • Menambahkan file baru kemudian push ke repository existing pada GitHub kita
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ touch newadd1.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is up to date with 'origin/master'.

#Untracked files:
#  (use "git add <file>..." to include in what will be committed)
#        newadd1.txt

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

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add newadd1.txt
  • Commit file
git commit -m "Add new 1 file txt"
  • Push file ke repository
git push origin master

Username for 'https://github.com': gunawan-d
Password for 'https://gunawan-d@github.com': 
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 305 bytes | 76.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/gunawan-d/belajar-git.git
   a780a40..c3661ae  master -> master

File sudah otomatis bertambah/terupdate jika sudah di push ke repository.

2. Git : Editing & Tracked Files

Apabila jika kita melakukan penambahan atau perubahan suatu file pada repository kita, maka kita bisa melacak dan mengetahui apakah file tersebut sudah masuk kedalam listing Git atau belum ?.

  • Rubah file terlebih dahulu kemudian chek statusnya
nano newadd1.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "edit file newadd1.txt"
#On branch master
#Your branch is up to date with 'origin/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:   newadd1.txt

#no changes added to commit (use "git add" and/or "git commit -a")
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git push
  • Setelah itu lakukan commit pada repo local kita
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -am "Modified text in newadd1.txt"
[master c48174f] Modified text in newadd1.txt
 1 file changed, 3 insertions(+)

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 1 commit.
#  (use "git push" to publish your local commits)

#nothing to commit, working tree clean
  • Apabila kita mau melakukan pengecekan terhadap file yang sudah tertrack oleh git maka gunakan command ini
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git ls-files
README.md
fresh1
newadd1.txt
  • Bisa kita bandingkan apabila melakukan git ls-files pada file yang belum dilakukan perintah git add, maka file tidak akan terindex oleh git.
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ echo "Testing abaikan" > test123.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ cat test123.txt 
Testing abaikan
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git ls-files
README.md
fresh1
newadd1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

Maka dia tidak akan terlihat, karena Git hanya melakukan tracking diles pada file yang sudah di add local repository atau sudah di git add

3. Git : Recursive Add

Untuk melakukan penambahan secara recursive atau baris pararel sangatlah gampang, kita bisa mnambahkan dengan command ” git add . ” sebagai berikut :

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ mkdir -p level1/level2/level3
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ echo "Test 1 level 1" > level1/test1.txt 
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ echo "Test 3 level 3" > level1/level2/level3/Test3.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 1 commit.
#  (use "git push" to publish your local commits)

#Untracked files:
#  (use "git add <file>..." to include in what will be committed)
#        level1/
#        test123.txt

nothing added to commit but untracked files present (use "git add" to track)
  • Add kemudian commit
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add --all
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 1 commit.
#  (use "git push" to publish your local commits)

#Changes to be committed:
#  (use "git restore --staged <file>..." to unstage)
#        new file:   level1/level2/level3/Test3.txt
#        new file:   level1/test1.txt
#        new file:   test123.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -am "Adding some several files"
[master 8d0034c] Adding some several files
 3 files changed, 3 insertions(+)
 create mode 100644 level1/level2/level3/Test3.txt
 create mode 100644 level1/test1.txt
 create mode 100644 test123.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ 

4. Git : Undoing Things

Kita bisa mengembalikan file yang telah kita rubah pada saat file masih dalam tahap staging area dan membatalkan semua perubahan yang telah kita miliki . Hal itu bisa dilakukan karena git memiliki snapshot dan untuk mengembalikkanya kita dapat menggunakan perintah “Git checkout “

  • Contoh modified file kita
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ nano level1/test1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#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:   level1/test1.txt

#no changes added to commit (use "git add" and/or "git commit -a")
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$
  • Kemudian add dan jangan dicommit maka file yang termodified akan masuk ke staging
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add level1/test1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#Changes to be committed:
#  (use "git restore --staged <file>..." to unstage)
#        modified:   level1/test1.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ nano level1/test1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#Changes to be committed:
#  (use "git restore --staged <file>..." to unstage)
#        modified:   level1/test1.txt

#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:   level1/test1.txt

Yang artinya adalah pertama kita melakukan add file tersebut sehingga masuk ke dalam ruangan staging & yang kedua kita melakukan perubahan / modified pada file itu lagi tapi belum masuk ke staging.

  • Selanjutnya kita akan test bahwa posisi sekarang adalah file kita berada di modified yang kedua, karena kita telah 2 kali melakukan modified file test1.txt, dan kita akan testing melakukan snapshot / checkout ke posisi file yang pertama.
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git reset HEAD level1/test1.txt
Unstaged changes after reset:
M       level1/test1.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#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:   level1/test1.txt

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

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git checkout -- level1/test1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#nothing to commit, working tree clean

Dan kita berhasil melakukan checkout / snapshot ke file yang pertama kali sebelum kita edit tadi.

5. Git : Rename, Moving and Deleting Files

Kita bisa melakukan rename, memindah dan mendelete files pada local repository kita dengan perintah berikut :

  • Rename
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/level1$ git mv level2/test2.txt level2/test212.txt 
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/level1$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 2 commits.
#  (use "git push" to publish your local commits)

#Changes to be committed:
#  (use "git restore --staged <file>..." to unstage)
#        new file:   level2/test212.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/level1$ git commit -m "Rename file test2.txt to test212.txt"
[master a8c7f51] Rename file test2.txt to test212.txt
 1 file changed, 1 insertion(+)
 create mode 100644 level1/level2/test212.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git/level1$

Disini kita bisa lihat bahwa kita merename file test2.txt menjadi test212.txt.

  • Delete files
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git ls-files
README.md
fresh1
level1/level2/level3/Test3.txt
level1/level2/test212.txt
level1/test1.txt
newadd1.txt
test123.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git rm test123.txt 
rm 'test123.txt'
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 3 commits.
#  (use "git push" to publish your local commits)

#Changes to be committed:
#  (use "git restore --staged <file>..." to unstage)
#       deleted:    test123.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "Delete file test123.txt"
[master 831003b] Delete file test123.txt
 1 file changed, 1 deletion(-)
 delete mode 100644 test123.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 4 commits.
#  (use "git push" to publish your local commits)

#nothing to commit, working tree clean
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

Check files test123.txt sudah di delete

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git ls-files
README.md
fresh1
level1/level2/level3/Test3.txt
level1/level2/test212.txt
level1/test1.txt
newadd1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

6. Git : History Files

Dengan menggunakan git, kita juga bisa melihat history file pada repository yang kita miliki, baik itu repository local maupun hasil cloninggan dari repository existing. Dan tools yang digunakan adalah perintah “git log”.

Ada dua command :

a. Melihat log detail (Jam dan tanggal dan juga nama author sangat detail)

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git log
commit 831003beccb212824846e5547de738952295b17d (HEAD -> master)
Author: Gunawan <Gunawan>
Date:   Sun Jul 4 10:16:31 2021 +0700

    Delete file test123.txt

commit a8c7f51c764dfd506ebe16c10c897b3a42ed848e
Author: Gunawan <Gunawan>
Date:   Sun Jul 4 10:12:57 2021 +0700

    Rename file test2.txt to test212.txt

commit 8d0034c3c885d251d8d5e8fe4d66d7eacbca7021
Author: Gunawan <Gunawan>
Date:   Sat Jul 3 21:46:44 2021 +0700

    Adding some several files

b. Melihat log dengan secara ringkas tapi informatif

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git log --oneline --graph --decorate
* 831003b (HEAD -> master) Delete file test123.txt
* a8c7f51 Rename file test2.txt to test212.txt
* 8d0034c Adding some several files
* c48174f Modified text in newadd1.txt
* c3661ae (origin/master) Add new 1 file txt
* a780a40 add file fresh1
* d11d54a Edit file Readme
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

7. Git : Alias

Git Alias adalah fitur git yang memungkinkan kita mendefinisikan perintah kita sendiri untuk menjalankan perintah bawaan pada Git seperti Add, Commit, reset HEAD, push dll.

  • Contoh saya mengubah cara check “status” saya ubah menjadi st .
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git config --global alias.st status
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git st
#On branch master
#Your branch is ahead of 'origin/master' by 4 commits.
#  (use "git push" to publish your local commits)

nothing to commit, working tree clean
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$
  • Testing saya merubah cara check log yang sebelumnya panjang menggunakan command ” log --oneline --graph --all --decorate” menadi git hist saja.
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git config --global alias.hist "log --oneline --graph --all --decorate"
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git hist
* 831003b (HEAD -> master) Delete file test123.txt
* a8c7f51 Rename file test2.txt to test212.txt
* 8d0034c Adding some several files
* c48174f Modified text in newadd1.txt
* c3661ae (origin/master) Add new 1 file txt
* a780a40 add file fresh1
* d11d54a Edit file Readme
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

Sangat mudah bukan ?, dan tujuan dari alias ini adalah memang mempermudah kita untuk menyingkat atau menyederhanakan command yang panjang menjadi pendek.

8. Git : Ignoring Unwanted Files

Pada Git kita juga dapat mengabaikan terhadap file yang dimiliki pada repository kita. Sebagai contoh : apabila kita memiliki sebuah file dengan nama anyar.txt tapi file tersebut belum kita staging dan commit pasti git akan mendeteksi dia sebagai untracked files pada saat kita check dengan status git. Nah untuk mencegah file tersebut diteteksi kita bisa gunakan Git Ignore.

  • Add files & create file gitignore
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ touch anyar.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
#On branch master
#Your branch is ahead of 'origin/master' by 4 commits.
#  (use "git push" to publish your local commits)

#Untracked files:
#  (use "git add <file>..." to include in what will be committed)
#        anyar.txt

nothing added to commit but untracked files present (use "git add" to track)
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ nano .gitignore
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ ls -al
total 0
drwxrwxrwx 1 gunawan gunawan 4096 Jul  4 10:43 .
drwxrwxrwx 1 gunawan gunawan 4096 Jul  3 13:03 ..
drwxrwxrwx 1 gunawan gunawan 4096 Jul  4 10:43 .git
-rwxrwxrwx 1 gunawan gunawan   14 Jul  4 10:43 .gitignore
-rwxrwxrwx 1 gunawan gunawan   14 Jul  3 13:09 README.md
-rwxrwxrwx 1 gunawan gunawan    0 Jul  4 10:43 anyar.txt
drwxrwxrwx 1 gunawan gunawan 4096 Jul  3 20:46 fresh1
drwxrwxrwx 1 gunawan gunawan 4096 Jul  4 10:00 level1
-rwxrwxrwx 1 gunawan gunawan   38 Jul  3 21:24 newadd1.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
On branch master
Your branch is ahead of 'origin/master' by 4 commits.
  (use "git push" to publish your local commits)

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        anyar.txt

nothing added to commit but untracked files present (use "git add" to track)
  • Git add lalu commit file ignorenya
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add .gitignore
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "Adding git igonre file to exclude unwanted file"
[master 402732e] Adding git igonre file to exclude unwanted file
 1 file changed, 1 insertion(+)
 create mode 100644 .gitignore
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
On branch master
Your branch is ahead of 'origin/master' by 6 commits.
  (use "git push" to publish your local commits)

nothing to commit, working tree clean
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ ls
README.md  anyar.txt  fresh1  level1  newadd1.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

NB : isi dari .gitignore sendiri adalah nama file yang ditambahkan tadi yaitu anyar.txt

9. Git : Diff

Untuk melihat perubahan apa saja yang telah kita lakukan dalam suatu file yang telak kita ketahui lognya, kita bisa menggunakan command “Git Diff

  • Disini kita melakukan Add file , lalu me modifikasi file sebanyak 2 kali:

a. Menambahkan text umur

b. Menambahkan text belajar

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ echo " testing rambo" > rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "Add file rambo"
[master f9c8638] Add file rambo
 1 file changed, 1 insertion(+)
 create mode 100644 rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ nano rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "Add age rambo"
[master b9360db] Add age rambo
 1 file changed, 2 insertions(+), 1 deletion(-)
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ nano rambo.txt
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git add rambo.txt 
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git commit -m "Rambo Learn About Git"
[master db397a5] Rambo Learn About Git
 1 file changed, 2 insertions(+), 1 deletion(-)
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$
  • Selanjutnya kita bisa melihat log perubahan file dengan detail menggunakan diff

Check log

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git log --oneline --decorate
db397a5 (HEAD -> master) Rambo Learn About Git
b9360db Add age rambo
f9c8638 Add file rambo
8074295 Adding git igonre file to exclude unwanted file
402732e Adding git igonre file to exclude unwanted file
831003b Delete file test123.txt
a8c7f51 Rename file test2.txt to test212.txt
8d0034c Adding some several files
c48174f Modified text in newadd1.txt
c3661ae (origin/master) Add new 1 file txt
a780a40 add file fresh1
d11d54a Edit file Readme
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ cat rambo.txt 
Nama : rambo
Umur : 23
Learn: Belajar git
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$
  • Check log detail menggunakan diff sebagai berikut : pilih code log nya “disini saya memilih diff add umur rambo”
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git diff b9360db
diff --git a/rambo.txt b/rambo.txt
index da0daf0..d96a3d1 100644
--- a/rambo.txt
+++ b/rambo.txt
@@ -1,2 +1,3 @@
 Nama : rambo
-Umuur : 23
+Umur : 23
+Learn: Belajar git
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

Tanda + plus adalah tanda file yang sudah ditambahkan dan kita berada pada posisi tanda – minus .

  • Testing checkout / mode snapshot ke file posisi sebelumnya sebelum penambahan text “Add umur”
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git checkout b9360db rambo.txt
Updated 1 path from b1a368d
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ cat rambo.txt 
Nama : rambo
Umuur : 23
gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$ git status
On branch master
Your branch is ahead of 'origin/master' by 9 commits.
  (use "git push" to publish your local commits)

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   rambo.txt

gunawan@DESKTOP-KFCM1IQ:/mnt/d/Github/belajar-git$

Selamat mencoba.

Leave a Reply

Your email address will not be published. Required fields are marked *