Cara memahami Git: pengantar perintah dasar, tip, dan trik

Baru-baru ini saya menjadi mentor bagi rekan saya. Dan mentee saya telah menanyakan saya tentang Git pada beberapa kesempatan. Ini untukmu kolega! NB Saya seharusnya menulis artikel ini ketika kita mulai tapi saya harap ini akan membantu sekarang!

Dan ingat: Cara terbaik untuk mempelajari apa pun adalah melakukannya sendiri! Dan seperti yang selalu dikatakan mentor saya kepada saya: Udaraj!

Dasar

Jadi mengapa Git sangat penting?

Mari kita mulai dengan mengutip baris pertama di halaman Wikipedia Git:

Git ( / ɡɪt / ) adalah sistem kontrol versi untuk melacak perubahan dalam file komputer dan mengoordinasikan pekerjaan pada file tersebut di antara banyak orang.

Jadi itu berarti bahwa fungsi paling dasar dan penting dari Git adalah memungkinkan tim untuk menambahkan (dan menggabungkan) kode pada saat yang sama ke proyek yang sama. Dengan menambahkan kemampuan ini ke proyek, itu membuat tim lebih efisien dan memberi mereka kemampuan untuk mengerjakan proyek yang lebih besar dan masalah yang lebih kompleks.

Ada juga banyak hal lain yang dilakukan Git dengan sangat baik: ia memungkinkan kita mengembalikan perubahan, membuat cabang baru untuk menambahkan fitur baru, menyelesaikan konflik penggabungan, dan sebagainya.

Bagaimana Git bekerja

Git menyimpan proyek dalam repositori . Komitmen dibuat untuk proyek dan mereka memberi tahu Git bahwa Anda puas dengan kode baru atau yang diubah yang Anda buat.

Kode / perubahan baru dilakukan di cabang. Sebagian besar pekerjaan dilakukan di cabang lain dan kemudian digabungkan dengan cabang master. Semua ini disimpan di direktori yang sama dengan proyek tetapi dalam sub-folder bernama .git .

Untuk berbagi kode dengan kolega Anda, Anda mendorong perubahan ke repositori. Untuk mendapatkan kode baru dari kolega Anda, Anda menarik perubahan dari repositori.

Lalu apa itu GitHub, GitLab dan Bitbucket?

Baiklah, saya senang Anda bertanya! Jenis aplikasi ini disebut layanan manajemen repositori. Mereka memainkan peran penting dalam pengembangan perangkat lunak modern.

Meskipun Git dan GitHub adalah solusi kontrol versi untuk sebagian besar perusahaan, GitHub memiliki beberapa pesaing yang kuat seperti GitLab dan Bitbucket. Namun, jika Anda tahu cara menggunakan GitHub, Anda tidak akan mengalami masalah dalam bekerja dengan GitLab atau Bitbucket.

Jadi, untuk memperjelas: Git adalah alatnya, dan GitHub adalah layanan untuk proyek yang menggunakan Git.

Di mana saya dapat menemukan proyek menarik dan terhubung dengan pengembang lain?

GitHub, GitLab dan Bitbucket memiliki opsi pencarian repositori publik dan kemampuan untuk mengikuti pengguna lain dengan mudah.

Dapatkah Anda sekarang melihat mengapa penting untuk mengetahui Git dan Github (GitLab / Bitbucket)? Satu-satunya hal yang tersisa sebelum berbicara tentang perintah adalah memberi tahu Anda beberapa aturan sederhana yang harus selalu diikuti saat menggunakan Git:

  • Aturan 1: Buat repositori Git untuk setiap proyek baru
  • Aturan 2: Buat cabang baru untuk setiap fitur baru

Perintah

Untuk memulai dengan Git, Anda harus memilikinya di komputer Anda. Jika Anda belum memilikinya, buka di sini dan ikuti instruksinya.

Inisialisasi repositori Git baru: Git init

Semua yang Anda kodekan dilacak di repositori. Untuk menginisialisasi repositori git, gunakan perintah ini saat berada di dalam folder proyek. Ini akan membuat folder .git.

git init

Git add

Perintah ini menambahkan satu atau semua file yang diubah ke area pementasan.

Untuk menambahkan file tertentu ke pementasan:

git add filename.py

Untuk menampilkan file baru, dimodifikasi, atau dihapus:

git add -A

Untuk mementaskan file baru dan file yang dimodifikasi:

git add .

Untuk tahap file yang dimodifikasi dan dihapus:

git add -u

Git commit

Perintah ini mencatat file dalam riwayat versi. -M berarti pesan komit mengikuti. Pesan ini adalah pesan khusus dan Anda harus menggunakannya untuk memberi tahu kolega Anda atau masa depan Anda sendiri apa yang ditambahkan dalam komit itu.

git commit -m "your text"

Status Git

Perintah ini akan mencantumkan file dalam warna hijau atau merah. File hijau telah ditambahkan ke panggung tetapi belum dikomit. File yang ditandai merah adalah file yang belum ditambahkan ke panggung.

git status

Bekerja dengan cabang

Branch_name cabang Git

Ini akan membuat cabang baru:

git branch branch_name

Git checkout branch_name

Untuk beralih dari satu cabang ke cabang lainnya:

git checkout branch_name

Git checkout -b branch_name

Untuk membuat cabang baru dan beralih secara otomatis:

git checkout -b branch_name

Ini kependekan dari:

git branch branch_name git checkout branch_name

Cabang Git

Untuk mendaftar semua cabang dan melihat di cabang mana Anda saat ini:

git branch

Git log

Perintah ini akan mencantumkan riwayat versi untuk cabang saat ini:

git log

Dorong tarik

Git push

Perintah ini mengirimkan perubahan yang dilakukan ke repositori jarak jauh:

git push

Git pull

Untuk menarik perubahan dari server jarak jauh ke komputer lokal Anda:

git pull

Untuk perintah lebih lanjut dan penjelasan rinci tentang yang terdaftar, saya akan merekomendasikan Anda untuk melihat dokumentasi resmi Git.

Tips dan Trik

Buang semua perubahan yang belum mengikat Anda

Seperti yang dikatakan, perintah ini akan membuang semua perubahan yang belum Anda lakukan:

git reset --hard

Hapus file dari git tanpa menghapusnya dari komputer Anda

Terkadang, saat menggunakan perintah "git add", Anda mungkin akan menambahkan file yang tidak ingin Anda tambahkan.

Jika Anda tidak berhati-hati selama "git add", Anda mungkin akan menambahkan file yang tidak ingin Anda komit. Anda harus menghapus versi bertahap file tersebut, lalu menambahkan file tersebut ke .gitignore untuk menghindari kesalahan yang sama di kali kedua:

git reset file_name echo filename >> .gitignore

Edit pesan komit

Sangat mudah untuk memperbaiki pesan komit:

git commit --amend -m "New message"

Terima kasih telah membaca! Lihat lebih banyak artikel seperti ini di profil freeCodeCamp saya: //www.freecodecamp.org/news/author/goran/ dan hal menyenangkan lainnya yang saya buat di halaman GitHub saya: //github.com/GoranAviani