Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Web Development

Mudah Mengontrol Versi Menggunakan Git

by
Read Time:12 minsLanguages:

Indonesian (Bahasa Indonesia) translation by Mew da Vinci (you can also view the original English article)

Pernahkah Anda mengerjakan suatu proyek yang begitu berat, hingga Anda kuatir dalam memperbaharui file atau menambahkan fitur? Mungkin masalahnya adalah Anda tidak menggunakan sistem pengontrol versi. Tutorial hari ini, kita akan mempelajari dasar-dasar yang mungkin merupakan VCS terbaik di dunia: Git.

Apakah itu Git?

Git merupakan alat manajemen kode yang bersifat open-source; yang dibuat oleh Linus Torvalds ketika dia membangun kernel Linux. Disebabkan root-root tersebut, maka diperlukan sesuatu yang cepat; itu saja, dan mudah dikuasai juga. Git memungkinkan Anda mengerjakan kode Anda dengan pikiran yang tenang bahwa apapun yang Anda lakukan bersifat reversibel. Hal itu menjadikan bereksperimen dengan berbagai gagasan baru dalam sebuah proyek terasa mudah dan tidak menguatirkan apa pun. Git Parable, yang dilakukan Tom Preston-Werner, merupakan perkenalan yang luar biasa terhadap beragam istilah dan gagasan di balik Git.

Kenapa Harus Menggunakan Git?

Anda wajib menggunakan sebuah sistem pengontrol revisi; seperti yang kami katakan, dia memberikan Anda kebebasan dalam melakukan apa pun yang Anda mau dengan kode Anda dan tidak perlu kuatir akan mengacaukannya. Jadi, seandainya Anda sudah tahu manfaat sistem pengontrol revisi, mengapa Anda menggunakan git? Kenapa bukan SVN atau Perforce atau yang lainnya? Sejujurnya, saya tidak terlalu mempelajari perbedaannya; coba lihat WhyGitIsBetterThanX.com untuk memperoleh informasi yang bermanfaat.

Bagaimana Cara Mengaturnya?

Git sangat mudah untuk didapatkan: pada Mac, mungkin penggunaan git-osx-installer adalah yang termudah. Jika Anda telah menginstal MacPorts, Anda mungkin ingin memperoleh Git lewat situ; Anda bisa menemukan petunjuk pada situs bantuan GitHub. (Dan tentu saja, kita sedang membahas GitHub). Pada Windows, cara termudah untuk memulainya adalah menggunakan msysgit installer. Bagaimanapun juga, jika Anda memiliki Cygwin, Anda bisa meng-git-kan Git lewat situ.

Bagaimana Caranya Menggunakan Git?

Mulai dari sekarang Anda sudah harus menginstal Git; jika Anda menggunakan Mac; bukalah sebuah terminal; Jika Anda menggunakan Windows, buka Git Bash (melalui msysgit) atau Cygwin prompt Anda. Dari sini, tidak boleh ada perbedaan OS.

Konfigurasi

Kita akan mulai dengan sedikit mengonfigurasi. Setiap commit yang Anda buat akan mempunyai nama Anda dan alamat email untuk mengidentifikasi 'pemilik' commit, jadi Anda harus memberi nilai-nilai tersebut. Untuk melakukannya, jalankan perintah-perintah berikut ini:

Boleh juga untuk mengaktifkan beberapa teks berwarna, hanya agar memudahkan pembacaan saat di terminal.

git init

Sekarang Git tersebut mengenali Anda, bayangkan kita membuat aplikasi web sederhana berbasis PHP. (Tentunya, semakin besar suatu proyek, semakin bersinar juga Git tersebut, tapi kita baru mempelajari peralatannya, kan?) Kita memiliki direktori kosong bernama 'mySite.' Pertama-tama fokus ke direktori tersebut (menggunakan perintah cd). Untuk memulai Git, Anda perlu menjalankan perintah git init; seperti dugaan Anda, perintah ini menginisialisasikan suatu repositori Git pada folder tersebut, dengan menambahkan folder .git di dalamnya. Repositori mirip buku riwayat kode. Dia akan menyimpan semua versi lama kode Anda dengan baik, seperti saat ini.

Git InitGit InitGit Init

Perhatikan bahwa jalur terminal Anda telah bertambah dengan (master). Itu adalah cabang tempat Anda bekerja saat ini. Cabang? Anggap saja proyek Anda mirip sebatang pohon; Anda bisa membuat berbagai macam fitur yang berbeda-beda di setiap cabangnya, dan segalanya akan tetap terpisah dan aman.

git add

Kita sudah mulai mengerjakan aplikasi kita.

FilesFilesFiles

Sebelum kita melangkah lebih jauh, kita harus membuat commit pertama kita. Penjelasan sederhananya, commit adalah sebuah pointer yang mengarahkan ke suatu tempat pada riwayat kode Anda. Sebelum kita bisa melakukannya, bagaimanapun juga, kita perlu memindahkan file apa saja yang kita ingin untuk menjadi bagian dari commit ini ke area staging. Area staging adalah tempat untuk menyimpan file untuk commit Anda berikutnya; mungkin Anda belum mau menetapkan semua perubahan terkini, jadi Anda menempatkan beberapa di area staging. Kita bisa melakukannya menggunakan perintah Add

Secara sederhana, arti tanda . adalah untuk memasukkan apa saja. Anda bisa lebih spesifik lagi kalau Anda mau.

git commit

Sekarang file kita telah berada di stage, mari kita commit-kan mereka. Lakukan dengan perintah

Perintah barusan menyebabkan semua file yang ada di area staging diambil dan kode tersebut diberi tanda sebagai titik poin pada riwayat proyek kita. Jika Anda tidak memasukkan opsi apapun ke perintah di atas, maka Anda akan melihat tampilan seperti ini.

vimvimvim

Setiap commit harus disertai dengan pesan, sehingga Anda tahu mengapa kode itu dilakukan. Editor ini memungkinkan Anda untuk menulis pesan, serta melihat apa yang ada di dalam commit ini. Dari gambar di atas, Anda dapat melihat bahwa commit ini terdiri dari empat file baru. Editor yang Anda gunakan untuk menulis pesan bernama Vim; Jika Anda tidak terbiasa dengan vim, ketahuilah bahwa Anda tinggal menekan i (untuk Insert) sebelum Anda mengetik pesan. Pada gambar di atas, saya memasukkan pesan "Initial Commit." Setelah Anda menuliskan pesan Anda, tekan Escape dan ketik :wq (untuk menyimpan dan keluar). Kemudian, Anda akan melihat tempat yang Anda sediakan.

Commit AftermathCommit AftermathCommit Aftermath

Anda dapat menggunakan beberapa opsi untuk membuat banyak commit secara lebih cepat. Pertama-tama, Anda bisa menyisipkan sebaris pesan dengan -m.

Kemudian, -a memungkinkan Anda untuk melewatkan area stage; Yah, tidak juga sih. Git secara otomatis akan membuat stage dan menyediakan semua perubahan file ketika Anda menggunakan opsi ini. (Ingat, tindakan ini tidak akan menambahkan file baru). Secara bersamaan, Anda dapat menggunakan perintah ini seperti berikut ini:

Jadi bagaimana caranya Git mengetahui setiap bagian commit? Daripada menomori mereka, Git memanfaatkan konten-konten kode pada commit tersebut untuk membuat 40 karakter hash SHA1. Bagian yang paling rapi dalam hal ini adalah, karena ini memanfaatkan kode untuk membuat hash, sehingga tidak ada dua hash yang sama di proyek Anda kecuali kode pada kedua commit tersebut bersifat identik.

git status

Perintah git status memungkinkan Anda melihat keadaan terkini pada kode Anda. Kita baru saja menyelesaikan sebuah commit, sehingga git status akan menunjukkan kepada kita bahwa tidak ada yang baru.

status, cleanstatus, cleanstatus, clean

Jika kita terus mengerjakan proyek imajiner kita, Anda akan melihat perubahan status kita. Saya akan mengedit index.php kita dan menambahkan file lain. Sekarang, dengan menjalankan git status memberikan kita hal ini:

Status, not cleanStatus, not cleanStatus, not clean

Pembaharuan dibagi menjadi dua kategori: "telah diubah namun tidak diperbaharui", dan "file tidak terlacak." Jika kita menjalankan

Anda akan melihat bahwa kita memiliki bagian "changes to be committed". Daftar file ini ditambahkan ke area staging. Saya akan melakukan perubahan-perubahan menggunakan ini:

Sekarang jalankan git status untuk memperlihatkan kepada kita direktori kerja yang bersih.

git branch / git checkout

Berikut ini merupakan sebuah skenario: ketika kita sedang asyik mengerjakan proyek, tiba-tiba kita mendapatkan ide cemerlang. Ide yang begitu revolusioner, seakan mampu mengubah proyek kita secara drastis. Kita harus mencobanya, walaupun kita tidak ingin mengabaikan perasaan tidak aman ini, pengujian terhadap rancangan kode pertama, dan kode yang sebenarnya. Apa yang harus dilakukan? Ini adalah kondisi dimana git branch akan sangat membantu. Mari kita cabangkan proyek kita sehingga jika gagasan besar kita gagal, maka tidak ada kerugian apapun.

Hanya dengan menjalankan cabang perintah pilihan sans akan terdaftar pada cabang kita; Sekarang, kita hanya punya cabang master, dimana setiap repositori git dimulai dengan apa. Untuk benar-benar membuat sebuah cabang baru, tambahkan sebuah nama cabang baru Anda setelah perintah tersebut.

Ketika Anda membuat cabang baru, Anda tidak beralih ke sana secara otomatis. Perhatikan bahwa terminal kita masih mengatakan (master). Ini adalah kondisi dimana kita menggunakan cabang comrade perintah git checkout.

Git BranchGit BranchGit Branch

(Tip: Anda bisa membuat sebuah cabang dan beralih ke sana pada satu kali kejadian dengan perintah ini: git checkout -b nama cabang.) Seperti yang Anda lihat, kita berada sekarang di cabang bigIdea. Mari kita kode badai ini. Git status akan menunjukkan pekerjaan kita.

2 new files2 new files2 new files

Mari kita melakukan perubahan kita:

Baiklah, fitur ini cukup untuk sekarang; mari kita kembali ke branch master kita; tapi sebelum kita lakukan, saya ingin menunjukkan kepada Anda folder proyek kita saat ini.

Files, branch bigIdeaFiles, branch bigIdeaFiles, branch bigIdea

Sekarang, kembalilah ke cabang master; Anda tahu bagaimana:git memeriksa master. Lihatlah ke folder proyek kita lagi.

Files, branch masterFiles, branch masterFiles, branch master

Tidak, saya tidak melakukan apa-apa; kedua file tersebut merupakan bagian dari cabang bigIdea saja, sehingga kita bahkan tidak tahu bahwa mereka tersedia di cabang master. Ini tidak hanya bekerja untuk file yang lengkap, tetapi juga untuk bahkan perubahan terkecil di dalam file.

git merge

OK, jadi kita telah bekerja keras pada cabang bigIdea itu di waktu luang kita. Bahkan, setelah commit yang lainnya, hal itu tampak begitu manis kita telah memutuskan hal itu cukup baik untuk bergabung dengan cabang master. Jadi bagaimana kita melakukannya?

Inilah tujuan perintah git merge dibuat. Sementara Anda berada di cabang master, cobalah untuk memberikan ini:

Semudah itu; sekarang, segala sesuatu di cabang bigIdea adalah bagian dari cabang master. Anda dapat menyingkirkan cabang bigIdea sekarang, kalau Anda mau.

Saya harus menyebutkan bahwa jika Anda belum menggabungkan sebuah cabang, maka Git tidak akan membiarkan Anda menghapusnya dengan perintah ini; Anda akan perlu menggunakan huruf D kapital pada pilihan tersebut. Ini merupakan bentuk keamanan.

git log / gitk

Anda mungkin ingin melihat sejarah commit Anda di beberapa titik selama proyek Anda berlangsung. Ini dapat dengan mudah dilakukan dengan perintah log.

Ini akan menampilkan daftar semua commit yang Anda buat dalam sebuah proyek, menunjukkan mereka dalam urutan terbalik. Anda bisa mendapatkan di cukup rapi sepotong info di sini:

  • penulis commit
  • hash commit
  • tanggal dan waktu
  • pesan
git loggit loggit log

Pasti informatif, tapi agak kering, kan? Kita bisa mencerahkan sedikit beberapa hal dengan opsi grafik.

git log --graphgit log --graphgit log --graph

Sekarang kita dapat melihat struktur pohon, semacam. Meskipun kita tidak mendapatkan nama mereka, kita dapat melihat masing-masing cabang dan commit yang dibuat pada mereka. Jika Anda terbiasa untuk bekerja dalam terminal, Anda mungkin akan baik-baik saja dengan ini. Namun, jika (sebelum pengalaman ini) terminal kata pertama sebagai sesuatu yang mematikan, bernapas mudah: ada sebuah aplikasi untuk itu. Coba ini:

gitkgitkgitk

Ini adalah browser repositori grafis. Anda dapat menelusuri sekitar commit Anda, melihat persis apa adalah berubah dalam setiap file selama commit, dan banyak lagi. (Anda akan menyadari saya menambahkan beberapa commit sebelum penggabungan, hanya untuk membuat struktur lebih dikenali.)

GitHub

Sekarang kamu sudah mendapatkan ilmu yang masuk akal mengenai pengetahuan seputar Git. Git adalah cara yang bagus untuk berbagi kode dengan orang lain dan bekerja pada proyek-proyek bersama. Ada sejumlah repositori Git hosting situs. Kita akan hanya melihat satu: GitHub.

GitHub Home PageGitHub Home PageGitHub Home Page
GitHub Sign UpGitHub Sign UpGitHub Sign Up

Menuju ke halaman pendaftaran GitHub dan membuat account. Anda akan membutuhkan kunci umum SSH, jadi mari kita membuat yang sekarang! (Catatan: Anda tidak perlu kunci saat sign up; Anda dapat menambahkan nanti.)

Buka terminal kamu dan ketik ini:

sshsshssh

Opsi t menetapkan jenis, dan opsi C menambahkan komentar, tradisional alamat email Anda. Anda kemudian akan diminta tempat untuk menyimpan kunci; hanya menekan enter akan melakukan (yang menyimpan file ke lokasi default). Selanjutnya, masukkan pass-phrase, dua kali. Sekarang Anda memiliki kunci; Mari kita memberikannya kepada GitHub.

Pertama, Dapatkan kunci Anda dari file; terminal akan telah mengatakan kepada Anda mana tombol disimpan; Buka file, Salin kunci (menjadi tidak berhati-hati untuk menambahkan baris baru atau ruang putih). Buka laman akun GitHub, gulir ke SSH kunci publik, dan klik "Add kunci publik lain." Paste di kunci Anda dan menyimpannya. Anda baik untuk pergi! Anda dapat menguji otentikasi Anda dengan ini:

Anda akan diminta untuk pass-frase; untuk menghindari keharusan untuk mengetik ini setiap kali Anda terhubung ke GitHub, Anda dapat mengotomatisasi ini. Aku bisa memberitahu Anda bagaimana melakukan hal ini, tapi aku mungkin secara tidak sengaja akan menjiplak: Bantuan GitHub memiliki dataran-Inggris artikel tentang cara untuk melakukan itu.

Git Clone

Jadi sekarang Anda sedang mengatur dengan GitHub; Mari kita ambil sebuah proyek. Bagaimana tentang jQuery? Jika Anda pergi ke proyek GitHub jQuery, Anda akan menemukan URL klon git. Jalankan ini:

git clonegit clonegit clone

Ini membuat jquery folder dan menyalin seluruh jquery repositori ke komputer Anda. Sekarang Anda memiliki riwayat lengkap proyek; Check out gitk – semua.

git push

Jadi, katakanlah Anda telah bekerja pada sebuah proyek, mengelola itu dengan git secara lokal. Sekarang Anda ingin berbagi dengan teman, atau dunia. Login ke GitHub dan membuat repositori baru. GitHub akan memberikan URL umum klon (untuk orang lain yang ingin men-download proyek Anda) dan URL pribadi klon (untuk diri sendiri).

Create New RepositoryCreate New RepositoryCreate New Repository

Kemudian, kembali ke proyek Anda di terminal itu dan sisipkan putaran:

Remote adalah repositori proyek di lokasi terpencil. Dalam kasus ini, kami memberikan remote ini nama asal, dan menyerahkannya URL klon pribadi kami. (Jelas, Anda akan memiliki untuk menggantikan saya URL untuk Anda sendiri.) Sekarang bahwa proyek tahu mana itu akan...

Git pushGit pushGit push

Ini mendorong cabang master ke asal terpencil. Sekarang kau proyek ini tersedia untuk dunia! Kembali ke halaman proyek Anda dan melihat proyek Anda.

GitHub ProjectGitHub ProjectGitHub Project

git pull

Anda mungkin di ujung lain dari proyek: kau penyumbang bukan pemilik. Ketika pemilik mendorong komit baru ke repositori, Anda dapat menggunakan git pull untuk mendapatkan update. Git pull adalah benar-benar alat combo: membentang git fetch (mendapatkan perubahan) dan git merge (penggabungan mereka dengan salinan saat ini).

Anda telah siap!

Well, ada begitu banyak lagi yang bisa Anda pelajari tentang Git; mudah-mudahan Anda telah mempelajari perintah-perintah yang cukup membantu Anda mengelola proyek berikutnya dengan lebih rapi. Akan tetapi jangan berhenti di sini; cek sumber daya berikut ini untuk menjadi seorang master Git!

  • Ikuti perkembangan kami di Twitter, atau berlangganan ke Nettuts + RSS Feed untuk tutorial pengelolaan website terbaik melalui web tersebut.


Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.