Perintah Favorit Git: Bagian 1
Sebenarnya, ada banyak sekali tutorial git yang ada di luar sana bisa kita cari dengan bantuan google. Mulai dari tutorial git untuk pemula sampai mahir. Oleh karena itu, admin ingin membuat tutorial juga. Tapi setelah dipikir-pikir, admin memutuskan untuk menunjukkan perintah-perintah favorit dalam git saja. Alasannya adalah untuk memudahkan bagi admin yang belum mahir-mahir amat dalam git untuk mengingat perintah yang ada dan artinya.
Pada bagian 1 kali ini, admin hanya akan menunjukkan perintah yang digunakan dalam komputer tanpa koneksi internet. Jadi tidak ada remote repositori di sini, karena kita akan membahasnya pada bagian 2.
=====
Setting
=====
git --version
-> Cek versi git yang digunakan
git config --global user.name "contoh-username"
git config --global user.email contoh-email@gmail.com
-> Konfigurasi awal git, berupa username dan email yang digunakan dalam situs github
-> Anda akan mendapatkan username ketika anda mendaftar ke situs github.com
git config --list
-> Melihat config/settingan gitkalo
-> Pastikan user.name dan user.email ada, maka config selesai
=====
Repositori
=====
git init
git init .
-> Membuat repositori di tempat cmd sedang aktif
git init C:\Users\NamaUser\GitProject
-> Membuat repositori di direktori yang dituju
-> Contoh di atas, berarti kita membuat repositori dalam direktori "C:\Users\NamaUser\GitProject"
git status
-> Cek status file atau folder dalam repositori git
git log
-> Cek log perubahan yang dilakukan dalam repositori
git log --oneline
-> Cek log dengan tampilan lebih sederhana
git log cf08ca0837cf26f1c595be36bb3a6b815e311be1
-> Cek log revisi/commit tertentu berdasarkan nomor commit. "cf08ca0837cf26f1c595be36bb3a6b815e311be1" adalah nomor commit
git log index.html
-> Cek log file tertentu berdasarkan nama filenya
git log --author='contoh-username'
-> Cek log author/penulis tertentu berdasarkan nama authornya. Nama author itu bisa jadi nama akun github lho ya
=====
.gitignore
=====
.gitignore adalah file yang berisi daftar nama-nama file dan direktori yang diabaikan oleh Git
Ini bukan perintah dalam git, setahu admin
=====
Repositori: 3 Kondisi File Dalam Git
=====
Ketika kita melakukan perintah 'git status' maka ada 3 kemungkinan yang akan kita temukan
1. Modified
Perubahan sudah dilakukan namun belum ditandai dan belum disimpan di version control. Bisa terjadi jika kita memasukkan file asing/baru ke dalam repositori kita atau mengubah file yang ada dalam repositori. Biasanya nama file akan berwarna merah
2. Staged
Perubahan sudah ditandai namun belum disimpan di version control. Biasanya nama file staged berwarna hijau.
Untuk mengubah file dari modified menjadi staged adalah dengan menggunakan perintah :
git add nama_file.ekstensi
git add index.html
git add about.html
git add contact.html
-> Contoh 1
git add index.html about.html contact.html
-> COntoh 2
git add *.html
-> COntoh 3 : Mengubah semua file dengan ekstensi html modified menjadi staged
git add .
-> COntoh 4 : Mengubah semua file dan folder modified menjadi staged
3. Commited
Menyimpan perubahan yang sudah ditandai ke version control.
Untuk mengubah file staged menjadi commited adalah dengan perintah :
git commit
git commit -m "file index.html direvisi"
-> Contoh 1
=====
Catatan
=====
Untuk mengetahui kondisi file, gunakan perintah git status
File yang sudah pernah di-commited ketika dirubah/direvisi, bisa langsung di-commited tanpa harus di-staged terlebih dahulu
-m "file index.html direvisi" digunakan untuk menambahkan pesan dalam ketika menyimpan revisi/commit
=====
Melihat Perbandingan Perubahan/Revisi
=====
git diff
-> Melihat perbandingan perubahan terakhir yang terjadi dalam repositori
git diff cf08ca0837cf26f1c595be36bb3a6b815e311be1
-> Melihat perbandingan perubahan terakhir berdasarkan nomor commit/revisinya
git diff index.html
-> Melihat perbandingan perubahan terakhir file tertentu berdasarkan nama file
git diff nomor_commit nomor_commit
-> Melihat perbandingan perubahan antar revisi/commit yang satu dengan revisi/commit yang lain
git diff nama-cabang nama-cabang
-> Melihat perbandingan perubahan antar cabang
===
catatan
===
Dalam perintah diff
- ini adalah kode yang dihapus pada revisi terakhir, biasanya warna merah
+ ini adalah kode yang ditambahkan pada revisi terakhir, biasanya warna hijau
Bisa juga
- ini adalah kode sebelum diubah
+ ini adalah kode yang telah diubah
=====
Pembatalan Perubahan/Revisi
=====
git checkout nama-file.html
-> Pembatalan revisi jika revisi belum di-staged ataupun committed
git reset nama-file.html
-> Pembatalan staged, dari staged dikembalikan menjadi modified
git checkout nomor-commit nama-file
-> Mengembalikan file dalam keadaan seperti commit sesuai nomor commit
-> file akan dalam keadaan staged, silahkan modified dengan perintah 'git reset'
git checkout nomor-commit
-> Mengembalikan semua file dalam kondisi sebelum 'commit nomor-commit' dilakukan, namun bersifat sementara
git checkout HEAD~3 nama-file
-> Mengambalikan file 3 commit sebelumnya
git revert -n nomor-commit
=> Mengambalikan semua file sesuai commit
=====
Percabagan
=====
git branch
-> Melihat cabang yang ada direpositori
-> Yang ada tanda bintangnya berarti sedang aktif/digunakan
git branch cabang_1
-> Membuat repo cabang git bernama cabang_1
git branch cabang_2
git checkout cabang_2
-> Perintah checkout bisa digunakan untuk pindah repo cabang cabang_2
git checkout master
-> Pindah dari branch/repo cabang ke master/repo utama
-> File yang ada di cabang, tidak akan ada di repo utama
git checkout master
git merge cabang_1
-> Menggabungkan repo cabang cabang_1 dengan repo utama
-> Namun kita harus masuk ke repo utama terlebih dahulu
-> Bentrok bisa terjadi jika ada dua orang yang mengedit file yang sama
-> Untuk mengatasinya, buka file yang bentrok pada teks editor
-> Kedua kode yang bentrok akan dipisahkan dengan tanda =====
-> Silahkan perbaiki kodenya dan 'add' lalu 'commit'
-> Jika cabang/branch sudah mati atau tidak ada pengembangan lagi, sebaiknya dihapus
git branch -d cabang_2
-> menghapus repo cabang cabang_2
=====
Checkout Reset Revert
=====
git checkout nomor-commit
-> Datang ke commit tersebut atau kembali ke masa lalu
git checkout master
-> Kembali ke masa sekarang dari masa lalu
git checkout -b nama-cabang-baru nomor-commit
-> Membuat cabang dari commit masa lalu/sebelumnya
git reset nomor-commit
-> Kembali ke masa lalu dan menghapus masa depan
resert --soft -> Mengambalikan dengan kondisi file dalam keadaan staged
resert --mixed-> Mengambalikan dengan kondisi file dalam keadaan modified
resert --hard -> Mengembalikan dengan kondisi file dalam keadaan commited
git reset --soft nomor-commit
-> Mengembalikan file dalam keadaan staged ke kondisi commit sesuai nomor commit
-> Jangan lakukan reset pada repositori yang sudah dibagikan kepada publik, karena dapat merusaknya
git revert nomor-commit
-> Mengambil kondisi file yang ada di masa lalu, kemudian menggabungkannya dengan commit terakhir jika di-commit
Referensi:
Semoga berguna...
Perintah Favorit Git: Bagian 2 (dalam proses pembuatan)


Harrah's Cherokee Casino Resort selects new gaming
BalasHapusHarrah's Cherokee Casino Resort in 여수 출장안마 Cherokee, 대구광역 출장마사지 N.C., has announced plans to operate a new 안양 출장샵 gaming and entertainment 고양 출장안마 destination, Harrah's Cherokee 여수 출장마사지