Git vs GitHub: Perbedaan, Fungsi, dan Manfaatnya

Dalam dunia pemrograman, programmer sering bekerja dengan banyak file kode dan melakukan perubahan pada proyek secara terus-menerus. Jika tidak dikelola dengan baik, perubahan tersebut dapat menyebabkan kode sulit dilacak atau bahkan hilang.

Untuk mengatasi masalah tersebut, programmer dapat menggunakan Git dan GitHub. Keduanya sering digunakan bersama, tetapi memiliki fungsi yang berbeda.

Git digunakan untuk mengelola perubahan kode, sedangkan GitHub menyediakan platform untuk menyimpan dan berkolaborasi pada proyek menggunakan Git.

Lalu, apa perbedaan Git dan GitHub? Apa manfaatnya bagi programmer? Simak penjelasan berikut.

Apa Itu Git?

Git adalah sistem pengontrol versi terdistribusi (Distributed Version Control System atau DVCS) yang digunakan untuk mencatat dan mengelola perubahan pada file proyek.

Git memungkinkan programmer menyimpan riwayat perubahan kode sehingga versi sebelumnya dapat diperiksa atau dipulihkan jika diperlukan.

Git dapat digunakan secara lokal di komputer tanpa harus terhubung ke internet.

Contoh Penggunaan Git

Misalnya programmer membuat aplikasi dengan struktur berikut:

project/
├── index.php
├── koneksi.php
└── style.css

Setelah melakukan perubahan, Git dapat mencatat perubahan tersebut dalam sebuah commit.

Contoh riwayat:

Commit 1: Membuat halaman utama
Commit 2: Menambahkan koneksi database
Commit 3: Memperbaiki tampilan CSS

Dengan riwayat ini, programmer dapat mengetahui perubahan yang telah dilakukan.

Apa Itu GitHub?

GitHub adalah platform pengembangan software berbasis internet yang menyediakan hosting repository Git serta fitur kolaborasi.

GitHub memungkinkan programmer menyimpan repository secara online, berbagi kode, mengelola perubahan, dan bekerja bersama anggota tim.

GitHub juga menyediakan fitur seperti:

  • Repository.
  • Pull request.
  • Issues.
  • Code review.
  • Branch.
  • Actions.
  • Kolaborasi proyek.

GitHub menggunakan Git sebagai sistem pengontrol versi, tetapi Git dan GitHub bukanlah hal yang sama.

Perbedaan Git dan GitHub

Berikut perbandingan Git dan GitHub:

AspekGitGitHub
JenisVersion control systemPlatform hosting dan kolaborasi
Fungsi utamaMencatat perubahan kodeMenyimpan dan mengelola repository secara online
PenggunaanDapat digunakan secara lokalUmumnya digunakan melalui layanan online
Koneksi internetTidak selalu diperlukanDiperlukan untuk fitur layanan online tertentu
PengembangProyek Git dikembangkan oleh komunitas open sourceDikelola oleh GitHub
Contoh perintahgit commitPull request melalui GitHub
KolaborasiMendukung penggabungan perubahanMenyediakan fitur kolaborasi dan code review

Kesimpulannya: Git adalah alat version control, sedangkan GitHub adalah platform yang dapat digunakan untuk menyimpan dan mengembangkan proyek Git.

Fungsi Git untuk Programmer

Git memiliki beberapa fungsi penting dalam pengembangan software.

1. Mencatat Riwayat Perubahan

Git menyimpan catatan perubahan yang dilakukan pada proyek.

Programmer dapat melihat kapan perubahan dilakukan dan siapa yang membuatnya, berdasarkan informasi yang tersedia dalam commit.

2. Mengembalikan Versi Sebelumnya

Jika perubahan menyebabkan masalah, programmer dapat memeriksa atau mengembalikan kode ke versi sebelumnya menggunakan fitur Git yang sesuai.

3. Membuat Branch

Branch memungkinkan programmer mengembangkan fitur secara terpisah dari cabang utama.

Contohnya:

main
 ├── fitur-login
 ├── fitur-pembayaran
 └── perbaikan-bug

Setiap branch dapat digunakan untuk pekerjaan yang berbeda.

4. Menggabungkan Perubahan

Git menyediakan fitur untuk menggabungkan perubahan dari satu branch ke branch lain.

Proses ini disebut merge.

5. Bekerja Secara Lokal

Git dapat digunakan untuk mencatat perubahan tanpa harus mengunggah setiap perubahan ke internet.

Fungsi GitHub untuk Programmer

GitHub membantu programmer dalam berbagai aktivitas pengembangan software.

1. Menyimpan Repository Online

Repository Git dapat diunggah ke GitHub sehingga dapat diakses melalui akun yang memiliki izin.

2. Kolaborasi Tim

Beberapa programmer dapat bekerja pada proyek yang sama dengan menggunakan branch dan fitur kolaborasi.

3. Pull Request

Pull request digunakan untuk mengusulkan perubahan agar dapat ditinjau dan dipertimbangkan untuk digabungkan ke branch tujuan.

4. Code Review

Anggota tim dapat memeriksa kode, memberikan komentar, dan mendiskusikan perubahan melalui fitur code review.

5. Portofolio Programmer

Repository publik dapat digunakan untuk menunjukkan proyek, kontribusi, dan kemampuan pemrograman kepada orang lain.

Namun, repository tidak selalu harus bersifat publik. Pengaturan akses perlu disesuaikan dengan kebutuhan dan keamanan proyek.

Istilah Penting dalam Git

Sebelum menggunakan Git, ada beberapa istilah yang perlu dipahami.

Repository

Repository adalah tempat yang berisi file proyek dan riwayat perubahan yang dikelola Git.

Repository dapat berada di komputer lokal atau di layanan hosting seperti GitHub.

Commit

Commit adalah catatan perubahan yang disimpan dalam riwayat Git.

Contoh:

Menambahkan fitur login

Sebaiknya pesan commit menjelaskan perubahan yang dilakukan.

Branch

Branch merupakan jalur pengembangan yang memungkinkan programmer mengerjakan perubahan secara terpisah.

Merge

Merge digunakan untuk menggabungkan perubahan dari satu branch ke branch lainnya.

Clone

Clone digunakan untuk menyalin repository beserta riwayat Git dari lokasi tertentu ke komputer lokal.

Push

Push digunakan untuk mengirim commit lokal ke repository remote.

Pull

Pull mengambil perubahan dari repository remote dan mengintegrasikannya ke branch lokal sesuai proses Git yang dijalankan.

Pull Request

Pull request merupakan fitur pada platform seperti GitHub untuk mengajukan perubahan agar dapat ditinjau dan digabungkan ke branch tujuan.

Cara Menginstal Git

Untuk menggunakan Git di komputer, programmer perlu menginstalnya terlebih dahulu.

Git dapat diunduh melalui situs resminya:

Setelah instalasi selesai, buka Terminal, Command Prompt, atau Git Bash.

Periksa apakah Git telah terpasang:

git --version

Jika instalasi berhasil, terminal akan menampilkan versi Git yang terpasang.

Cara Membuat Repository Git

Berikut langkah dasar membuat repository lokal.

1. Buat Folder Proyek

Contoh:

mkdir proyek-belajar
cd proyek-belajar

2. Inisialisasi Git

git init

Perintah tersebut membuat repository Git di dalam folder proyek.

3. Buat File

Contoh file:

echo "# Proyek Belajar" > README.md

4. Periksa Status

git status

Perintah ini menampilkan status file dalam repository.

5. Tambahkan File ke Staging Area

git add README.md

Untuk menambahkan seluruh perubahan yang sesuai:

git add .

Gunakan perintah tersebut dengan memahami file yang akan dimasukkan ke commit.

6. Buat Commit

git commit -m "Menambahkan README"

Commit menyimpan perubahan yang telah dipersiapkan ke dalam riwayat Git.

Cara Menghubungkan Git dengan GitHub

Setelah repository lokal dibuat, programmer dapat menghubungkannya dengan repository di GitHub.

1. Buat Repository di GitHub

Buka:

Login, lalu buat repository baru melalui akun GitHub.

2. Tambahkan Remote

Contoh:

git remote add origin https://github.com/username/nama-repository.git

Ganti URL dengan alamat repository yang benar.

3. Atur Nama Branch

Contoh:

git branch -M main

4. Kirim Commit ke GitHub

git push -u origin main

Setelah berhasil, commit lokal dapat dikirim ke repository remote sesuai konfigurasi dan izin akses.

Jangan membagikan token akses, password, atau informasi rahasia di dalam repository.

Alur Kerja Git dan GitHub

Berikut gambaran alur kerja sederhana:

Membuat atau Mengubah Kode
          ↓
       git add
          ↓
      git commit
          ↓
       git push
          ↓
       GitHub
          ↓
   Kolaborasi / Review

Jika terdapat perubahan dari anggota tim, programmer dapat mengambil perubahan tersebut menggunakan perintah Git yang sesuai.

Manfaat Git dan GitHub untuk Pelajar

Git dan GitHub juga bermanfaat bagi pelajar yang sedang belajar pemrograman.

1. Menyimpan Proyek Sekolah

Proyek HTML, CSS, PHP, Python, atau bahasa lainnya dapat dikelola menggunakan Git.

2. Membuat Portofolio

Proyek yang sesuai dapat ditampilkan melalui repository GitHub untuk mendokumentasikan hasil belajar.

3. Belajar Kolaborasi

Pelajar dapat mempelajari cara bekerja sama dalam proyek software.

4. Memahami Version Control

Penggunaan Git membantu memahami bagaimana perubahan kode dikelola.

5. Melatih Kebiasaan Dokumentasi

Commit dan README dapat digunakan untuk menjelaskan perkembangan serta cara menjalankan proyek.

Git dan GitHub untuk Proyek PHP

Misalnya programmer sedang membuat aplikasi CRUD menggunakan PHP dan MySQL.

Struktur proyek:

aplikasi-crud/
├── index.php
├── tambah.php
├── edit.php
├── hapus.php
├── koneksi.php
└── style.css

Git dapat digunakan untuk mencatat perubahan pada file tersebut.

Contoh commit:

Commit 1: Membuat koneksi database
Commit 2: Menambahkan fitur tambah barang
Commit 3: Menambahkan fitur edit barang
Commit 4: Memperbaiki validasi form

Repository GitHub dapat digunakan untuk menyimpan proyek dan membantu kolaborasi jika aplikasi dikembangkan bersama tim.

Perhatian: Jangan mengunggah password database, API key, token, atau file konfigurasi rahasia ke repository publik.

GitHub Bukan Pengganti Git

Kesalahpahaman yang sering terjadi adalah menganggap Git dan GitHub sebagai aplikasi yang sama.

Git merupakan sistem version control yang dapat digunakan tanpa GitHub. Sementara itu, GitHub merupakan salah satu platform yang mendukung repository Git dan kolaborasi.

Selain GitHub, terdapat platform lain yang mendukung pengelolaan repository Git, seperti GitLab dan Bitbucket.

Kesalahan Pemula Saat Menggunakan Git

Beberapa kesalahan yang sering dilakukan pemula adalah:

1. Tidak Membuat Commit secara Teratur

Commit yang terlalu besar dan tidak terstruktur dapat menyulitkan penelusuran perubahan.

2. Menggunakan Pesan Commit yang Tidak Jelas

Contoh pesan yang kurang informatif:

update

Contoh yang lebih jelas:

Memperbaiki validasi form login

3. Tidak Memeriksa Status Git

Sebelum melakukan commit, periksa file yang berubah menggunakan:

git status

4. Mengunggah Informasi Rahasia

Pastikan token, password, dan konfigurasi sensitif tidak ikut terunggah.

5. Tidak Memahami Perubahan Sebelum Merge

Periksa perubahan yang akan digabungkan untuk mengurangi risiko konflik atau kesalahan.

Perintah Git Dasar yang Perlu Dipahami

PerintahFungsi
git initMembuat repository Git
git statusMelihat status repository
git addMenambahkan perubahan ke staging area
git commitMenyimpan perubahan ke riwayat
git logMelihat riwayat commit
git branchMelihat atau mengelola branch
git switchBerpindah atau membuat branch sesuai opsi
git mergeMenggabungkan perubahan branch
git cloneMenyalin repository
git pushMengirim commit ke remote
git pullMengambil dan mengintegrasikan perubahan dari remote
git diffMelihat perbedaan perubahan

Kesimpulan

Git dan GitHub merupakan teknologi yang membantu programmer mengelola kode dan mengembangkan proyek secara lebih terorganisir. Git berfungsi sebagai sistem pengontrol versi untuk mencatat perubahan, sedangkan GitHub menyediakan platform untuk menyimpan repository dan mendukung kolaborasi.

Dengan mempelajari perintah dasar seperti git add, git commit, git push, dan git pull, programmer dapat mulai mengelola proyek secara lebih terstruktur.

Bagi pelajar dan programmer pemula, Git dan GitHub dapat menjadi bagian penting dalam proses belajar coding, membuat portofolio, serta memahami alur kerja pengembangan software modern.

Leave a Reply

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