Tutorial GIT secara singkat | init-add-commit-push

mrfdn author

Rafi

mrfdn.com - Beberapa tahun lalu, saya pernah berada di titik bingung—mau mulai pakai Git, tapi rasanya ribet banget!

Saat itu, saya cuma tahu Git itu version control buat kode, tapi gimana cara pakenya?

Sampai akhirnya, saya nekat coba langkah-langkah dasar ini, dan serius deh, hidup jadi lebih mudah. Kalau kamu pemula, ini panduan singkat dan padat tentang Git.

Baca juga cheat sheet Git lengkap

Daftar Isi

Apa Itu Git dan Kenapa Perlu Digunakan?

Git adalah version control system yang bantu kamu melacak perubahan kode. Intinya? Kamu bisa:

  • Balik ke versi sebelumnya kalau ada yang “pecah.”
  • Kolaborasi bareng tim tanpa harus kirim file “kode_baru_finalFINAL_v2.zip”.
  • Lebih organized dan aman.

Install Git

Windows: Unduh dari git-scm.com dan ikuti wizard-nya. MacOS/Linux: Bisa langsung install lewat terminal:

sudo apt-get install git # Untuk Ubuntu  
brew install git # Untuk Mac  
pkg install git # Untuk FreeBSD

Tutorial git step by step

Setelah itu buat/login ke github lalu buat repository baru di github.

Kemudian buat git config untuk bisa login ke github melalui terminal.

git config --global user.name "Sarah Smith"

git config --global user.email "SarahSmith@mail.com"

git config --list

Setelah itu secara default anda akan menggunakan branch bernama main.

Kemudah arahkan ke folder/direktory yang akan diupload ke github.

cd

mkdir Project

cd Project

Kemudian Login ke github anda kemudian buat repository baru.

Salin nama repository-nya. Kemudian jalankan perintah ini di dalam folder projek anda.

git remote add origin https://github.com/usernameanda/namarepoanda.git

Sekarang anda sudah siap mengirim / push ke github. Jalankan perintah berikut untuk mulai menghubungkan data di komputer anda ke repository yang telah dibuat di github.

  1. git init
  2. git add .
  3. git commit -m “pesan commit”
  4. git status
  5. git push -u origin main
  • Masukkan username github anda
  • Masukkan password token yang sudah didapatkan

Jika belum tahu password tokennya, silahkan generate dulu.

Password yang dimasukkan bukan password login github anda, tetapi generated token yang didapatkan melalui cara ini:

Cara mendapatkan password token github

  1. Klik tanda panah profil github anda
  2. Pilih setting
  3. Scroll ke bawah pilih Developer Setting di sebelah kiri
  4. Pilih Personal access tokens
  5. Pilih Generate new token
  6. Centang repo untuk bisa bekerja di seputar repository

Selanjutnya akan muncul sejumlah token, copy baris tersebut lalu simpan pada sebuah file supaya tidak hilang. Pilih no expired sehingga anda bisa tetap bisa menggunakan token ini selama system anda masih stabil.

Copas password generate token tersebut untuk mulai mengirim data anda ke repository github anda.

Demikian tutorial singkat tentang cara menggunakan git untuk mengirim data ke github. Cara ini dikenal juga dengan istilah git push.

Kalau lupa, urutannya seperti ini :

- git remote
- git config
- git init
- git status
- git add
- git commit
- git push
- git log

Cara menjalankan git push tanpa mengetik username dan password token github secara manual

Ini bisa dilakukan dengan format sebagai berikut.

git push https://<GITHUB_ACCESS_TOKEN>@github.com/<GITHUB_USERNAME>/<REPOSITORY_NAME>.git

Intinya catat dulu password token yang sudah didapatkan kemudian masukkan dalam format baris git push di atas.

Membuat branch baru berdasarkan branch yang sudah ada

Untuk menambahkan fitur pada sebuah tema hugo yang saya buat, saya selalu membuatnya pada sebuah branch yang terpisah dengan branch utama (main).

Misalnya saya ingin menambahkan fitur breadcrumb, maka terlebih dahulu saya pastikan berada di branch main lalu membuat sebuah branch bernama breadcrumb berdasarkan branch main.

//mengetahui branch yang sedang digunakan, pastikan ada di main
$ git branch 

//membuat branch baru berdasarkan main
$ git checkout -b breadcrumb

membuat branch baru dengan git checkout branch

Maka branch breadcrumb akan dibuat dan secara otomatis kita akan berganti ke branch baru bernama breadcrumb tersebut.

Menggabungkan 2 branch dengan git merge

Anggaplah kita sudah membuat fitur breadcrumbs, lalu kita ingin menggabungkannya dengan branch utama (main).

Pertama, silahkan lakukan commit terlebih dahulu di branch breadcrumb, commit saja, tidak perlu push.

Lalu pindah ke branch main.

Pada branch main ini kita jalankan perintah git merge.

//mengetahui branch yang sedang digunakan, pastikan ada di main
$ git branch 

//melakukan commit terhadap branch yang yang sedang dibuat (misalnya pada branch breadcrumb)
$ git commit -am "pesan commit dari branch breadcrumb"

//pindah ke branch main
$ git checkout main

//melakukan commit terhadap branch main
$ git commit -am "pesan commit dari branch main sebelum di merge"

//menggabungkan git branch breadcrumb dengan branch main
$ git merge breadcrumb

Mengatasi masalah / error git

Kadang ketika sudah bekerja dengan git, kita mengalami beberapa kendala seperti :

  • Tidak bisa push ke repository
  • Terdapat eror dengan pesan yang sulit untuk dipahami

Berikut tutorial git sebagai pengalaman pribadi untuk mengatasi masalah yang sering ditemukan saat menggunakan git.

Mengatasi tidak bisa push di repository github ! [rejected] main -> main (fetch first)

Eror ini terjadi pada saat kita push ke repository sendiri tetapi isinya sudah tidak sesuai dengan local.

Ini terjadi karena repo yang ada di remote repository (github/gitlab/etc) sudah di push terlebih dahulu dari pada yang ada di local.

Misalnya, kita sudah membuat/update file readme sendiri di github, bukan dari local lalu di-push ke repo.

Cara mengatasi eror ini adalah jangan melakukan git pull saja, tetapi ketik git pull --rebase.

Ini untuk mensinkronkan perubahan yang telah dilakukan di repo dengan local

Tidak perlu mengetik git init, apalagi melakukan git push -f karena itu akan menghapus semua jejak push yang pernah dilakukan.

Setelah itu langsung push saja, git push -u origin main

Pastikan sudah git add . lalu git commit -m "pesan"

Tunggu sampai selesai.

Mengatasi tidak bisa push ke repository ! [rejected] main -> main (non-fast-forward)

Simplenya adalah cukup dengan clone repository ke local, kemudian timpa isinya dengan local file yang siap dipush.

Tapi jika anda menemukan pesan eror seperti ini :

! [rejected]        main -> main (non-fast-forward)
  error: failed to push some refs to 'https://github.com/yourusername/yourrepo.git'
  hint: Updates were rejected because the tip of your current branch is behind
  hint: its remote counterpart. Integrate the remote changes (e.g.
      hint: 'git pull ...') before pushing again.
  hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Lakukan cara yang seperti di atas,

git pull --rebase

Jika berhasil alias tidak ada konflik, maka perubahaan yang ada akan otomatis merge dengan repo local kamu. Lanjutkan saja dengan push.

git push

Tetapi jika terdapat konflik maka, lakukan

git rebase --abort

Kemudian lakuan pull seperti biasa

git pull

Cara ini mengharuskan kamu untuk mengedit file secara manual, untuk memperbaiki bagian yang konflik.

Mengatasi OpenSSH Authentication Passphrase Request saat hendak melakukan git push

tutorial git - openssh authentication passphrase request

Jika anda menemukan pesan seperti ini saat hendak push ke repository, anda tidak akan bisa melakukan copy paste password token yang sudah pernah dibuat, tetapi harus diketik secara manual.

Ini akan sangat ribet karena mengingat password token git itu cukup panjang dan sulit untuk diingat.

Jadi disini kita menggunakan cara yang berbeda sebelum melakukan push. Kita definisikan username dan password token kita pada remote repository.

git remote set-url origin https://username:token@github.com/username/namarepo.git

Setelah itu jalankan perintah git push seperti biasa.

Dengan cara ini anda tidak perlu lagi copy paste password token github. Lebih menghemat waktu.

Untuk mengetahui pengaturan pada repo local anda, jalankan saja git config --list.

Membatalkan git add sebelum commit

Suatu hari saya tidak sengaja menjalankan perintah git add . pada folder yang salah.

Baca : Membuat konfigurasi dotfile untuk github

Akhirnya semua file dan folder yang terdapat pada direktori tersebut itu dalam list commit. Ini bisa dilihat melalui git status.

Saya tidak ingin membatalkan git add . perintah yang terakhir.

Caranya cukup jalankan

git reset

Lalu saya pun bisa kembali melakukan add pada file tertentu saja.

Menghapus file / folder dari github, bukan di local

Command ini sama juga dengan istilah untrack folder / file tertentu.

Misalnya kita sudah terlanjur push sebuah folder ke github, lalu kita ingin menghapusnya. Maka jalankan saja perintah ini.

git rm -r --cached /path/folder/yang/ingin/diuntrack

Menghapus branch yang ada di repo tapi tidak ada di local

Jika memeriksa repository anda lalu menemukan branch ada pada repo tapi sebenarnya sudah dihapus melalui local, lalu anda ingin menghapus yang ada di repo tersebut supaya terlihat sync dengan yang ada di local.

Misalnya, branch master yang ingin dihapus pada repo.

Cukup jalankan perintah ini.

git push origin --delete nama-branch-yang-mau-dihapus

contohnya git push origin --delete master

Setelah itu jalankan perintah

git fetch -p

-p artinya prune.

Supaya branch yang ada di repo semuanya jadi sinkron.

Demikian tutorial git singkat lengkap dengan cara menggunakan git untuk pemula serta cara mengatasi eror nya.

Artikel ini akan terus diupdate seiring masalah yang ditemui oleh admin, sebagai bagian dari pembelajaran. Semoga bermanfaat. :)

mrfdn author

Rafi

  • 15 year+ of Linux user.
  • 5 years+ blogger and web developer.

Jika artikel yang dibuatnya ternyata bermanfaat, support dengan cara

Baca juga