Bekerja dengan remote di Git


Bekerja dengan remote

Halo teman-teman, kembali lagi bersama saya. Kali ini kita akan belajar tentang bagaimana cara bekerja dengan remote di Git, maksudnya misalkan kita mempunyai repositori di penyedia jasa layanan Git server seperti Github, Gitlab atau BitBucket dan kita ingin melakukan perubahan terhadap repo kita secara lokal di komputer kita, nah kita bisa menggunakan git remote ini supaya kode di repo lokal kita sama dengan kode di repo yang ada di server(supaya lebih mudah kita sebut aja yang semacam Github, Gitlab atau BitBucket dengan server). Nah langsung aja ke materi nya.

Menduplikat repo dari server

Supaya kita bisa bekerja secara remote kita perlu memiliki repo lokal yang sama dengan repo yang ada di server. Cara termudahnya adalah dengan meng-clone repo yang ada di server. Caranya kita tinggal mengetikkan perintah

git clone https://github.com/schacon/ticgit

Ganti alamat url nya sesuai dengan url dari repo server yang ingin kamu clone . Setelah menjalankan perintah ini maka repo server akan di duplikat ke komputer kamu dan akan dibuatkan git remote dengan nama default-nya yaitu origin

Protokol yang digunakan untuk clone tidak hanya HTTPS tapi bisa juga SSH . Pembahasan menggunakan SSH bisa kita pelajari di postingan yang akan datang.

Menambahkan repo remote

Jika ingin menambahkan repositori remote yang lain, kita bisa menjalankan perintah

git remote add mc https://github.com/maccanie/ticgit

dengan perintah diatas kamu akan dibuatkan repo remote dari alamat yang dimasukkan dengan nama remote mc, kamu bisa mengganti nama remote sesuai yang kamu inginkan ketika kamu menjalankan perintahnya. Perlu diingat repo remote tidak seperti repo lokal, repo remote tidak terlihat fisiknya jika kita membuka manajemen file.

Fetch dan Pull

Karena kita bermain dengan repo yang ada di server jadi jika ada perubahan terjadi pada file di git server kita harus terlebih dahulu mengambil datanya supaya repo lokal kita sama dengan repo yang ada di server. Nah maka dari itu diperkenalkanlah dua istilah yaitu fetch dan pull .
  • Fetch, jika kita melakukan fetch proses yang terjadi adalah repo remote kita akan mengambil data dari git server dan menyimpannya. Tapi data ini belum ditambahkan ke remote lokal, jadi file di repo lokal kita masih sama seperti yang lama.
  • Pull, jika kita melakukan pull proses yang terjadi sama seperti Fetch, hanya jika kita melakukan pull maka perubahan akan otomatis di merge dengan repo lokal. Jadi repo lokal kita sudah sama seperti yang ada pada repo server.

Push ke remote

Jika kita sudah melakukan perubahan, dan sudah kita commit di repo lokal. Supaya perubahan ini tersimpan di repo server kita perlu mengirim perubahan ke repo server dengan menjalankan perintah git push [remote-name] [branch-name]. Contoh kode nya seperti dibawah:

git push origin master

Ingat! jika kita melakukan push tetapi sebelumnya sudah ada perubahan pada repo server, maka kita perlu melakukan pull terlebih dahulu baru bisa melakukan push. Jika tidak push kita akan ditolak.

Menampilkan informasi tentang remote

Kita bisa menampilkan informasi tentang remote kita dengan menjalankan perintah 

git remote show <nama_remote>

perintah tersebut akan menampilkan informasi seperti ini.

$ git remote show origin
* remote origin
  Fetch URL: https://github.com/schacon/ticgit
  Push  URL: https://github.com/schacon/ticgit
  HEAD branch: master
  Remote branches:
    master                               tracked
    dev-branch                           tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push': master pushes to master (up to date) 

Perintah ini akan berguna jika kita ingin mengecek apakah ada branch yang bertambah atau dihapus pada repo server. Contohnya seperti ini.

$ git remote show origin
* remote origin
  URL: https://github.com/my-org/complex-project
  Fetch URL: https://github.com/my-org/complex-project
  Push  URL: https://github.com/my-org/complex-project
  HEAD branch: master
  Remote branches:
    master                           tracked
    dev-branch                       tracked
    markdown-strip                   tracked
    issue-43                         new (next fetch will store in remotes/origin)
    issue-45                         new (next fetch will store in remotes/origin)
    refs/remotes/origin/issue-11     stale (use 'git remote prune' to remove)
  Local branches configured for 'git pull':
    dev-branch merges with remote dev-branch
    master     merges with remote master
  Local refs configured for 'git push':
    dev-branch                     pushes to dev-branch                     (up to date)
    markdown-strip                 pushes to markdown-strip                 (up to date)
    master                         pushes to master                         (up to date)
Jika kita lihat diatas terdapat branch yang baru ditambahkan di repo server tapi belum ada di repo kita yaitu branch issue-43 dan issue-45, dan ada branch yang dihapus yaitu branch issue-11.

Me-rename dan menghapus remote

Jika kita ingin mengganti nama remote kita bisa menjalankan perintah git remote rename <nama_remote_lama> <nama_remote_baru>. Contohnya seperti dibawah:

git remote rename mc mcaul

Dan jika kita inging menghapus remote kita bisa menjalankan perintah git remote rm <nama_remote>. Contohnya seperti dibawah : 

git remote rm mcaul

Jika masih belum mengerti dengan penjelasan saya diatas, kalian bisa baca tutorial petani kode tentang git remote atau menonton video pak sandhika di bawah.


Oke, mungkin segitu aja dulu yang bisa saya bagikan kepada kalian. Jika kalian suka dengan tulisan saya kalian bisa membagikannya. Kalian juga bisa subscribe supaya tidak ketinggalan postingan saya selanjutnya. Jangan sungkan juga untuk berkomentar ya.. Sampai jumpa di postingan saya selanjutnya.
loading...

Comments

Popular posts from this blog

Konsep Dasar Branch

Belajar sejarah singkat GIT

Sejarah Kodokan Judo