Dalam pembelajaran kali ini kita akan mencoba semisalnya kita punya repo di github terus kita coba mengambilnya /clone di komputer lokal begitu juga kasus sebaliknya.
Buat Repo terlebih dahulu di akun githu masing -masing
Jika sudah kita mau clone kita bisa lakukan dengan HTTP atau SSH, kita coba yang HTTP dengan copy linknya
Setelah di copy URL nya, lakukan clone di dalam path yang ingin kita letakkan repo remote ke lokal, saya taruh pada path D:\belajar\git\remote
Dalam lingkaran kuning kita lihat kalau folder clone sudah terdapat di komputer lokal saya
Coba ketikka command "git remote" untuk melihat nama remotenya
Jika ingin melihat datanya lebih detail lagi bisa gunakan "git remote -v", -v artinya verbose
Disitu kita bisa dapatkan url atau alamat untuk fetch dan push
Coba cek "git status" hasilnya akan sedikit berbeda dengan sebelumnya ketika kita menjalankan git hanya di lokal saja, maka akan di kasih tau kalau branch yang di lokal sudah sama dengan yang di repo
Buat alias graph untuk menampilkan visual perubahan repo dengan perintah "alias graph="git log --all --decorate --oneline --graph"
"*" artinya baru ada 1 commit | "67b2cf3" ini 7 digit hash awal commit saat pertama di inisialisasi reponya | "HEAD -> master" ini branch untuk repo local |" origin/master, origin/HEAD" kalau yang berwarna merah branch repo remote
Buat File index.html
Setelah itu kita add, commit dan perhatikan statusnya
"Your branch is ahead of 'origin/master' by 1 commit" ini maksudnya branch local yang kita punya itu mendahului 1 commit dengan branch yang ada di repo remote
Coba kita graph untuk melihat visualisasinya
Kalau kita perhatikan origin master yang di remote ketinggalan dari branch lokal
Supaya repo di remote sama dengan lokal kita harus kirim perubahannya dengan perintah "git push"
Jika Pertama Kalinya commit maka silahkan login di github terlebih dahulu, Untuk melihat konfigurasi git kalian silahakan jalankan command "git config --list". Untuk config global gunakan command "git config --local user.name "username" dan "git config --local user.email "email_akun_git""(ini config untuk current repo jika ingin config untuk semua ganti --local dengan --global)
Jika sign in github berhasil maka push ke github terkait penrubahan di repo lokal sudah tereksekusi
Coba kita cek ke githubnya juga
Dalam lingkaran kuning kita bisa lihat akun saya telah commit(dari lokal) dengan menambahkan file index.html
Oke gimana jika ada akun lain yang coba commit ke akun github saya, sekarang lakukan config git lokal terlebih dahulu dengan mengubahnya ke akun lainsaya Skip saja ya,, jadi kurang lebih saya melakukan modifikasi seperi status dibawah ini
Setelah itu lakukan add commit untuk perubahannya sekaligus push untuk melihat yang terjadi jika push dengan account lain
Coba kita lihat di githubnnya seharusnya akun lain yang melakukan commit ke github akun saya
Dalam lingkaran kuning kita sama sama lihat bahwa akun fachriamrullah melakukan push dengan menambahkan sebuah file ke account github saya
Oke sekarang kita masuk ke kasus selanjutnya dimana jika kita punya git di lokal, seperti biasa buat repo(lokal-to-remote) dan sebuah file(index.php)
Selanjutnya Masuk folder "lokal-to-remote" kemudian lakukan inisialisasi repo dengan perintah "git init"
Coba untuk modifikasi file index.php
Selanjutnya lakukan commit perubahannya
Untuk membuat repo remote kita tetap harus membuat repo di github juga
Nah disini penting jika ingin membuat repo remote yang betul -betul kosong isinya initialize file README jangan dicentang, ini juga yang akan membuat memunculkan tampilan halaman konfigurasi yang nantinya ada beberapa setup
Setelah itu muncul dokumentasi setup atau konfigurasinya
Ini Di Github.repo remote belum ada dan di lokal juga belum ada maka lakukan ini
Atau jika kita udah punya repo di lokal, dan ini yang akan kita praktekan di tutorial ini
Coba kita praktekkan
Selanjutnya jika kita git status seharusnya repo lokal dan remote sudah up to date
Coba kita modifiaksi lagi file index.php
Kemudian commit dan push kembali seperti sebelumnya saja, dan ketika kita kembali lihat di githubnya
Nah selanjutnya di case yang ini kita akan mencoba jika kita mengubah di lokal naman di remotenya juga ada perubahan di file dan baris yang sama, kira kira apa yang akan terjadi. Misalnya kita menambahkan file style.css di repo lokal
Selanjutnya ke github pilih "Create New File"
Kemudian tambahkan/commit file style.css di github dengan isi yang sedikit berbeda dengan di lokal
Coba cek statusnya
Jika diperhatikan statusnya di lokal sudah melebihi 1 commitan dari pada di remote, padahal sebenernya di remote juga ada perubahan
Untuk mengetahui update perubahan yang ada di server bisa gunakan "git fetch"
"git fetch" berfungsi untuk mengecek update commit yang ada di remote
"Your branch and 'origin/master' have diverged" artinya branch kamu dan origin membuat cabang berbeda
(HEAD -> master) menambahkan 1 commit di repo local dan (origin/master) menambahkan 1 commit dir repo remote
Selanjutnya yang perlu kita lakukan adalah kita pull dulu untuk menarik perubahan yang terjadi di server repo
Katanya ada conflict di pull yang kita tarik karena kita menambhkan file dan baris yang sama
Berarti jika lihat ke text editor maka kita harus memperbaiki dulu konfliknya
""Your branch is ahead of 'origin/master' by 2 commits" repo local dianggap mendahului repo remote 2 commitan
Push untuk sinkronsisasi repo lokal dan remote
Jika kita graph untuk cek visualisasinya
Kita cek di repo remote/github
Demikian tutorial terkait remote git, semoga kita sama sama memahaminya.