MENGGUNAKAN GIT DAN GITHUB (PENGALAMAN PRIBADI)
Sementara GitHub adalah sebuah aplikasi berbasis website dengan Version Control System (VCS) yang menyediakan layanan untuk menyimpan repository dengan gratis secara online. Respository merupakan tempat yang dapat Anda gunakan untuk menyimpan berbagai file berupa source code.
VCS memperbolehkan pengguna untuk mengembalikan berkas-berkas ke keadaan sebelumnya, mengembalikan seluruh proyek kembali ke keadaan sebelumnya, membandingkan perubahan-perubahan di setiap waktu, melihat siapa yang terakhir mengubah sesuatu yang mungkin menimbulkan masalah, siapa dan kapan yang mengenalkan sebuah isu dan banyak lagi.
BAGIAN 1 : BEKERJA DENGAN GIT
Inisiasi : Setelah menginstal GIT (Jika belum silahkan unduh
di https://git-scm.com/downloads ),
Buka Git Bash Atau CMD untuk cek versi GIT.
Dengan perintah “git --version”
Login GIT : Masuk kedalam GIT untuk dapat melakukan
operasi-operasi GIT
Dengan perintah “git config –global user.email
“you@example”” dan “git config –global user.name “your_username””
Membuat repository : Buka folder yang ingin dijadikan
repository, klik kanan pilih Git Bash Here. Kemudian buat repository dengan
“git init”
Maka folder yang dipilih akan menjadi repository git dengan branch “master”
Melakukan commit : Commit merupakan tindakan untuk memasukan
file baru kedalam repsitory ataupun menyimpan perubahan yang terjadi terhadap
file di dalam repsitory
Untuk menampilkan status (keadaan) dari repository kita,
gunakan perintah “git status”
Untuk menambahkan file diluar repository (untracked),
pertama anda harus memindahkan file kedalam folder repository. Kemudian ketikan
“git add namafile.ekstensi”, maka file akan masuk kedalam staging
area. Lalu “git commit -m “Pesan anda terhadap perubahan yang terjadi”
Untuk mengupdate file yang diubah (modified), tidak perlu
melakukan “git add” langsung saja commit dengan “git commit -am “Pesan anda
terhadap perubahan yang terjadi””. Atau “git restore <file>” untuk
membatalkan perubahan (mengembalikan file seperti semula).
Jika terdapat file didalam folder repository yang terhapus /
hilang (missing) maka kita harus add kemudian commit file tersebut untuk
menyimpan perubahan pada repository. Atau “git restore <file>” untuk
membatalkan perubahan (mengembalikan file).
BAGIAN 2 : BRANCH & MERGE
Branch di analogikan seperti cabang, sehingga setiap
perubahan yang dilakukan pada branch tidak akan mempengaruhi jalur utama
(master/main). Sementara merge adalah menggabungkan suatu branch dengan jalur
utama (master/main).
Membuat Branch : Untuk membuat branch dapat dilakukan dengan
perintah “git branch <nama branch>”
Melihat Branch dan Pindah ke Branch Lain : Untuk dapat melihat
semua branch yang terdapat pada repository gunakan perintah “git branch”. Untuk
dapat bekerja pada suatu branch, kita perlu memindahkan head/pointer (tempat
kerja kita) ke branch yang dituju. Hal tersebut dapar dilakukan dengan perintah
“git checkout <nama branch>”.
*Sehingga, setiap perubahan yang dilakukan hanya akan
berpengaruh pada branch mahasiswa.
Melakukan Merge : Untuk melakukan merge, pertama kita harus
berada pada branch master, kemudian buat perintah “git merge <nama branch
yang ingin dimerge>”
*Maka setiap file yang ada pada branch mahasiswa akan pindah
ke branch master.
Menghapus Branch: Setelah dilakukan merge, maka branch yang
sudah dimerge (mahasiswa) tidak kita butuhkan. Untuk menghapus branch dapat
digunakan perintah “git branch -b <nama brach yang ingin dihapus>”. Dan
perintah “git branch -B <nama brach yang ingin dihapus>” untuk menghapus
branch yang belum dimerge.
Melakukan Merge Conflict : Jika kita ingin melakukan merge
suatu branch ke master, namun kedua branch mengerjakan file dan baris yang sama,
maka akan terjadi conflict. Kemudian git akan meminta kita untuk memilih
menggunakan script pada branch a atau branch b.
*Misal pada branch mahasiswa, file mahasiswa.html diubah
<h3>Data Mahasiswa</h3> menjadi <h1>Data Mahasiswa</h1>,
kemudian commit seperti biasa.
Dan pada branch master, file mahasiswa.html juga terjadi
perubahan namun berbeda, <h3>Data Mahasiswa</h3> diubah menjadi
<h5>Data Mahasiswa</h5>, kemudian commit seperti biasa.
Maka jika dilakukan merge antara branch mahasiswa dan branch
master, akan terjadi conflict dan git akan secara otomatis membuka code editor
dan menunjukan letak masalahnya.
Untuk mengatasinya kita harus resolve (memilih kode) secara
manual di code editor. Disini saya perubahan yang dilakukan pada branch
mahasiswa (perubahan menjadi h5), dengan menghapus opsi perubahan pada master (perubahan
menjadi h1).
Setelah itu lakukan commit pada file mahasiswa yang telah
dimodifikasi
BAGIAN 3 : BEKERJA DENGAN GITHUB (GIT REMOTE)
Inisiasi : Membuat akun GITHUB pada https://github.com/
Membuat Repository Pada GITHUB : Untuk membuat repository
pada GIYHUB sangatlah mudah, pilih ”Your repository” lalu pilih “New”. Makan
akan muncul tampilan :
Isi keterangan yang diminta lalu pilih “Create repository”
Clone Repository : Clone digunakan untuk memindahkan atau
mengkoneksikan repository pada GITHUB (remote) ke GIT (lokal). Untuk dapat
melakukan clone, pilih repository yang ingin di clone, pilih “code” pada GITHUB lalu copy link HTTPS yang tersedia.
Lalu buat folder baru pada komputer anda. Kemudian klik kanan, pilih "Git Bash Here"
Pada GIT BASH ketikan “git clone <linkyangdicopy>”.
Maka repository pada GITHUB akan ter-clone ke GIT lokal komputer anda, dan folder repository juga akan tercopy.
Kemudian masuk kedalam folder origin (repository) dengan cara berikut :
Misalnya, kemudian saya menambahkan file baru (index.html) kedalam folder repository (lokal). Maka jika saya lihat statusnya :
Maka file tersebut harus diadd dan dicommit.
Namun commit yang kita lakukan barusan, mendahului origin (repository remote). Maka kita harus kirim perubahan yang terjadi tersebut dengan perintah PUSH "git push"
Maka perubahan akan terkirim ke GITHUB
Sama halnya jika terdapat file yang modified atau deleted
Melakukan PULL : Pull dilakukan jika terjadi perubahan pada repository GITHUB yang dilakukan oleh orang lain sehingga kita tidak dapat melakukan push. Maka kita harus mengupdate repository lokal kita terlebih dahulu dengan melakukan PULL. Pull dapat dilakukan dengan perintah "git fetch" kemudian "git pull". Maka akan repository lokal kita akan menyesuaikan dengan repository di GITHUB. Hal ini bisa saja mengakibatkan conflict yang harus kita selesaikan secara manual nantinya.
Tidak ada komentar:
Posting Komentar