Skip to content
Arif Setiawan
Arif Setiawan

travel, culinary and technology

  • Home
  • About
  • Travel
    • Indonesia
      • Bali
      • Banten
      • Jakarta
      • Jawa Barat
      • Jawa Tengah
      • Jawa Timur
      • Kalimantan Selatan
      • Lampung
      • Sumatera Barat
      • Sumatera Utara
      • Yogyakarta
    • Laos
    • Malaysia
    • Singapore
    • Vietnam
  • Culinary
  • Technology
    • Startup
    • Software Development
    • Social Media
  • #kulinersince
  • Nol Kilometer
Arif Setiawan

travel, culinary and technology

Menggunakan Git : Penerapan dalam Sebuah Project

Arif Setiawan, January 31, 2017August 12, 2017

Melanjutkan pembahasan tentang Git sebelumnya, setelah kita dapat memulai sebuah project dengan sistem git, lalu apa yang harus dilakukan?

Sebenarnya sudah banyak juga referensi tentang mengelola project dengan git hingga day-to-day workflownya. Nah, di sini saya hanya ingin berbagi pengalaman pribadi saya saja dalam kegiatan sehari-hari menggunakan git dalam beberapa project. Semoga bisa bermanfaat.

SourceTree vs Terminal

Dari beberapa pengalaman saya berkolaborasi dengan developer lain dalam suatu project, saya menemukan 2 stereotype developer dalam menggunakan sistem git. Ada developer yang memilih jalan lebih mudah dengan memanfaatkan SourceTree, aplikasi client untuk mengelola git yang sudah ada UI-nya, ada juga yang memilih setia dengan sistem terminal, biar lebih greget. Dan di tim Limakilo pun terbagi menjadi 2 kubu ini, wkwk.

SourceTree
Terminal

Routine Command

Setelah siap dengan senjata yang cukup untuk bermain git. Selanjutnya adalah baris perintah apa saja yang biasanya rutin digunakan untuk mengerjakan project dan bekeja dengan developer lain. Sebenarnya command-command ini wajib dihafalkan jika kalian lebih nyaman bekerja dengan terminal, tetapi jika sudah menggunakan SourceTree, maka mostly bakal lebih enak dengan klik sana klik sini, heheu.

Git File Lifecycle
Git File Lifecycle
Clone Repo
git clone https://github.com/ariffsetiawan/someproject.git someproject

Digunakan untuk melakukan cloning/copy isi sebuah repository ke folder tertentu yang kita inginkan. Menu di SourceTree yang biasa saya gunakan untuk melakukan hal ini adalah New/Clone from URL.

Branching
git checkout -b <new_branch_name>

Branch utama sebuah project biasanya secara default ada di master. Nah, fitur branching biasanya digunakan untuk sebuah percobaan atau membagi level project ke dalam kategori tertentu. Tujuannya untuk menjaga agar branch master tetap clean. Misal, saya ingin mencoba menambahkan fitur tambahan yang tidak harus digabungkan ke repository utama terlebih dahulu maka saya biasanya membuat branch sendiri dengan nama arif-dev atau arif-debug. Nama yang digunakan juga biasanya merepresentasikan apa yang ada di branch tersebut agar developer lain langsung tau. Atau bisa juga digunakan untuk membagi level project sebagai branch testing dan branch production, yang biasanya menggunakan konfigurasi yang berbeda.

git checkout master

git checkout some_branch

Perintah di atas digunakan untuk berpindah branch.

Status
git status

Digunakan untuk melakukan pengecekan kondisi terakhir pada branch yang sedang kita buka.

Staging
git add foo.js
git add .

Digunakan untuk menambahkan berbagai perubahan yang kita lakukan ke dalam suatu koleksi yang nantinya siap untuk diunggah ke repository.

Commit
git commit -m "Fixing some bug"

Biasanya digunakan untuk menambahkan titik perubahan beserta pesannya pada koleksi yang sudah ada dalam tahap staging sebelum benar-benar diunggah ke repository. Usahakan pesan yang ditulis merepresentasikan perubahan terhadap perubahan yang dilakukan.

Push
git push

Digunakan untuk mengunggah koleksi perubahan yang sudah lengkap berikut dengan pesannya ke repository untuk digabungkan dengan hasil pekerjaan developer lain yang terhubung dengan repository yang sama. Kita akan selalu mempunyai yang namanya local repository dan remote repository (jika sudah terhubung dengan layanan cloud sistem git seperti Github atau Bitbucket, dll). Pada proses push inilah biasanya harus diantisipasi terjadinya conflict jika kita melakukan perubahan pada baris dan file yang sama dengan developer lain.

Fetch
git fetch upstream

Digunakan untuk mengunduh semua perubahan yang ada dari repository. Mirip dengan git pull, bedanya fetch hanya mengunduh perubahan sedangkan pull mengunduh dengan otomatis dilanjutkan dengan merge.

Merge
git merge origin/master

Fitur ini biasanya saya gunakan untuk menggabungkan kode program antara beberapa branch yang berbeda. Ada juga alternatifnya yaitu rebase.

Pull
git pull origin/master

Digunakan untuk mendapatkan perubahan terbaru di repository yang dilanjutkan langsung dengan proses merge.

Tag
git tag -a v0.1

Biasanya saya gunakan untuk menambahkan pointer atau versioning pada titik commit tertentu. Lebih untuk memudahkan jika suatu saat ingin mengembalikan state project pada titik tertentu. Misal saya punya project X v0.1, X v0.2, dst. Nah, versi-versi itulah yang dapat digunakan sebagai tagging.

Gitignore

Digunakan untuk  menentukan file-file dan atau folder mana saja yang akan di-exclude atau diabaikan dari sistem git. Misal untuk project yang menggunakan Node.js maka folder node_modules sudah pasti akan dimasukkan ke dalam gitignore karena isinya akan diupdate dari cloud repository. Atau bisa juga memasukkan folder log ke dalam gitignore jika menggunakan sistem logging berbasis file.

***

Mungkin itu beberapa perintah rutin yang saya gunakan dalam kehidupan sehari-hari sebagai developer. Ada yang mau menambahkan?

Sampai jumpa di pembahasan selanjutnya ya.

→ 933 readers

Related

Programming BitbucketGitGit RepositoryGithubProgrammingSoftware DevelopmentSourceTree

Post navigation

Previous post
Next post

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Popular Posts

  • Phuket Resto Borobudur: Menikmati Cita Rasa Thailand di Magelang
  • Soto Ayam Mbah Mul Sejak 1969
  • Tanah Lot: Keindahan Alam dan Spiritualitas yang Menyatu di Bali
  • Bakso Urat Lor Patung Kuda Manahan Solo Sejak 1983
  • Nol Kilometer Banjarmasin
  • Danau Beratan Bedugul Bali
  • Warma Pian Tegal Sejak 1926
  • Pempek Ny. Kamto Sejak 1984
  • Pecel Solo Resto di Kota Surakarta Sejak 2002
  • Game Development Life Cycle

Recent Posts

  • Steak Holycow CAMP Jogja
  • Soto Sapi Mbah Marto Sawitan Magelang
  • Cara Pilih Popok Bayi yang Tepat untuk Kulit Sensitif, Ini Panduannya!
  • Bebek Bacem Seyegan Sleman Yogyakarta
  • Raja Kosek Resto Mungkid Magelang

Categories

Archives

Subscribe

Enter your email address to subscribe to this blog.

Travel

  • Universal Studios Singapore: Panduan Wahana, Tips, dan Akses LengkapDecember 1, 2025
  • Pantai Batu Bolong Canggu BaliNovember 26, 2025
  • Tanah Lot: Keindahan Alam dan Spiritualitas yang Menyatu di BaliNovember 24, 2025
  • Staycation di The 101 Bali Oasis SanurNovember 23, 2025
  • Menghadiri Pernikahan Adat Bali di TabananNovember 22, 2025

Culinary

  • Steak Holycow CAMP JogjaJanuary 1, 2026
  • Soto Sapi Mbah Marto Sawitan MagelangDecember 28, 2025
  • Bebek Bacem Seyegan Sleman YogyakartaDecember 21, 2025
  • Raja Kosek Resto Mungkid MagelangDecember 20, 2025
  • Kazu Ramen: Pilihan Kuliner Ramen di Barat YogyakartaDecember 14, 2025

Technology

  • Nevacloud vs Hostinger VPS Global: Pilihan Terbaik untuk Pengguna IndonesiaDecember 13, 2025
  • Apa Bedanya VPS dengan Hosting BiasaDecember 5, 2025
  • Perbedaan Domain .COM, .ID, dan .NETNovember 5, 2025
  • Mengenal Jenis-Jenis Server: Mana yang Cocok untuk Website Anda?April 23, 2025
  • Cloud VPS vs Managed VPS: Mana yang Lebih Cocok untuk Bisnis Anda?April 8, 2025
©2026 Arif Setiawan | WordPress Theme by SuperbThemes
 

Loading Comments...