Diagram Three Tree
- Working directory = Area saat kita mengedit atau menambahkan file
- Staging index = Area persiapan untuk dipindahkan ke repository
- Repository = Area final setelah melakukan perubahan
Install git
sudo apt install git
Menjadikan sebuah direktori dikelola oleh git sebagai repositori
git init <path directory>
Cara Mengubah Nama Branch Menjadi main
Jika setelah git init ternyata nama branch Anda adalah master dan Anda ingin mengubahnya menjadi main, ada dua kondisi:
Kondisi A: Baru Saja git init (Belum ada Commit)
Jika Anda belum melakukan commit pertama, gunakan perintah ini:
Bash
git checkout -b main
Artinya: Buat branch baru bernama main dan langsung pindah ke sana.
Kondisi B: Sudah Ada Commit (Rename Branch)
Jika sudah ada history/commit dan Anda ingin mengubah nama master menjadi main:
Bash
git branch -m master main
Parameter -m berarti Move/Rename.
Konfigurasi identitas user pengelola git
Git config yang bersifat current repository/direcory (yang dikelola saat ini)
Ini hanya berlaku di repo tempat kamu menjalankan perintah ini. Kalau kamu buka repo lain, Git bisa pakai konfigurasi yang berbeda.
Konfigurasi username
git config user.name "nama_username"
Konfigurasi user email
git config user.mail "[email protected]
Git config yang bersifat global
Ini disimpan di ~/.gitconfig, dan berlaku ke semua repo kecuali kalau repo tersebut override pakai perintah git config.
Konfigurasi username
git config --global user.name "nama_username"
Konfigurasi user email
git config --global user.mail "[email protected]
Git remote
Menambahkan remote repository menggunakan SSH
gitt remote add nama-remote [email protected]:nama_username/nama_repository.git
Pastikan sudah menambahkan di file config ssh
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/namakey
IdentitiesOnly yes
Melihat daftar remote repository
git remote show
Workflow
Saat kita menambahkan/menghapus/memodifikasi sebuah file untuk menyimpannya perubahan secara permanen kita harus terlebih dahulu menambahkan perubahan nya kedalam Staging Index dengan cara
git add namafile
Atau, kita sudah menambahkan/memodifikasi file yang sangat banyak dan ingin semuanya dipindahkan ke Staging Index bisa dilakukan dengan cara
git add .
Setelah file yang akan kita simpan dipindahkan ke area Staging Index selanjutnya untuk menyimpan secara permanen keseluruhan perubahan kita harus menyimpannya ke repositori dengan cara
git commit -m "pesan perubahan"
Contoh :
git clone https://github.com/frizanwr/dotfiles.git
Untuk cara detailnya bisa dilihat di artikel Berikut
Git push
Jika kita sudah selesai mengerjakan sesuatu untuk menyimpannya ke repositori gunakan perintah
git push -u nama-remote nama-branch
Memastikan repository lokal sudah terbaru
git pull
Menjadikan visual studio code sebagai text editor default git
git config --global core.editor "code --wait"
Menjadikan visual studio code sebagai diff tool default git
git config --global diff.tool "default.difftool"
git config --global difftool.default-difftool.cmd "code --wait --diff \$LOCAL \$REMOTE"
Cloning git
Clone git public repository
git clone <url>
Cloning git private repository
Untuk mengclone private repositoy kita gunakan ssh.
[email protected]:username/nama-repo.git