Kursus
Dalam tutorial ini, saya akan memandu Anda menggunakan perintah Git push dan pull, serta membuat pull request melalui GitHub Desktop dan command line. Panduan ini praktis untuk siapa pun yang mengelola repositori kode.
Anda dapat mengikuti semua materi dalam tutorial ini, bahkan jika Anda pemula. Namun, jika Anda baru mengenal Git, lihat GitHub and Git Tutorial for Beginners kami dan siapkan lingkungan Anda menggunakan panduan penyiapan Git kami.
Apa Itu Git Push dan Git Pull?
Secara garis besar, berikut perbedaannya:
git push mengunggah commit lokal Anda ke repositori jarak jauh seperti GitHub, sedangkan git pull mengunduh perubahan dari repositori jarak jauh dan menggabungkannya ke cabang lokal Anda. Kedua perintah ini dapat digunakan melalui command line atau GitHub Desktop.
Catatan: Pull request adalah fitur GitHub untuk mengusulkan dan meninjau perubahan sebelum digabungkan — ini tidak sama dengan git pull.
Untuk mendorong commit dari cabang lokal ke repositori jarak jauh, gunakan:
git push <remote_name> <branch_name>
Catatan lain: GitHub tidak lagi mendukung autentikasi sandi. Gunakan kunci SSH atau personal access token sebagai gantinya.
Mendorong ke GitHub
Mari mulai dengan konsep push.
Menggunakan Command Line untuk Push ke GitHub
Belajar terbaik adalah dengan praktik, jadi mari kita lalui langkah-langkahnya.
1. Membuat repositori baru
Anda perlu membuat repositori baru dan klik tanda plus.
Isi semua detail yang diperlukan, yaitu nama repositori, deskripsi, dan juga jadikan repositori publik kali ini karena gratis.

2. Buka Git Bash Anda
Git Bash dapat diunduh di sini, dan ini adalah shell untuk berinteraksi dengan sistem operasi yang mengikuti perintah UNIX.
3. Buat proyek lokal di desktop Anda yang diarahkan ke direktori kerja saat ini
pwd adalah singkatan dari 'print working directory', yang digunakan untuk mencetak direktori saat ini.
Pindah ke path tertentu di komputer lokal Anda dengan cd 'path_name'. Perintah cd adalah singkatan dari 'change directory' dan digunakan untuk berpindah ke direktori kerja di sistem operasi Anda, dan untuk menemukan berkas Anda, 'path_name', yaitu C:/Users/Dell/Downloads/FaceDetect-main perlu diberikan. Perintah ini dapat mengidentifikasi berkas yang ingin Anda kerjakan.
4. Inisialisasi repositori git
Gunakan git init untuk menginisialisasi repositori. Ini membuat repositori kosong baru dengan direktori tersembunyi .git di tingkat atas proyek Anda, yang menempatkan semua informasi revisi di satu tempat.

5. Tambahkan berkas ke repositori lokal baru
Gunakan git add . untuk men-stage semua berkas di direktori saat ini. Gunakan git status untuk melihat berkas mana yang sudah di-stage dan siap untuk commit pertama Anda.

6. Commit berkas yang di-stage di repositori lokal Anda dengan menulis pesan commit
Anda dapat membuat pesan commit dengan menjalankan git commit -m 'your message', yang merekam perubahan yang di-stage ke repositori lokal. git commit menggunakan -m sebagai flag untuk pesan guna menetapkan commit dengan konten di mana deskripsi lengkap disertakan, dan pesan ditulis dalam kalimat imperatif hingga 50 karakter yang menjelaskan "apa yang diubah" dan "mengapa perubahan dilakukan".

7. Salin URL repositori jarak jauh Anda dari GitHub
HTTPS atau URL disalin dari akun GitHub yang diberikan, yaitu lokasi repositori jarak jauh.

8. Tambahkan URL yang disalin, yaitu repositori jarak jauh Anda, sebagai tujuan untuk mendorong konten lokal dari repositori Anda
git remote add origin 'your_url_name'
Pada kode di atas, origin adalah nama remote, dan URL remote adalah "https://github.com/Olivia-Smithcoder100/FaceDetection.git". Anda dapat melihat remote sebagai GitHub dalam kasus ini, dan GitHub menyediakan URL untuk ditambahkan ke repositori jarak jauh.
9. Push kode di repositori lokal Anda ke GitHub
git push -u origin main digunakan untuk mendorong konten lokal ke GitHub.
Dalam kode tersebut, origin adalah nama repositori remote bawaan Anda dan flag -u adalah upstream, yang setara dengan -set-upstream. main adalah cabang. name.upstream adalah repositori tempat kita mengkloning proyek.
Autentikasi menggunakan kredensial GitHub Anda. Perhatikan bahwa GitHub tidak lagi mendukung autentikasi sandi untuk operasi Git. Anda perlu menggunakan personal access token (PAT) atau kunci SSH sebagai gantinya.

10. Lihat berkas Anda di repositori yang dihosting di GitHub
Anda akhirnya dapat melihat berkas yang dihosting di GitHub.

Menggunakan GitHub Desktop untuk Push ke GitHub
GitHub Desktop tersedia untuk diunduh pada sistem operasi apa pun, dan menyediakan platform GUI (Graphical User Interface) untuk mendorong konten lokal dari repositori lokal Anda ke repositori jarak jauh seperti GitHub.
Anda perlu membuka akun GitHub Anda di browser dan proses membuat repositori baru, yaitu langkah 1, sama seperti yang disebutkan di atas dalam "Menggunakan Command line untuk PUSH ke GitHub".
1. Klik "Set up in a Desktop"
Anda perlu mengklik tombol seperti ditunjukkan di bawah ini, akan muncul pop up, lalu klik "Open GitHub desktop".

2. Melakukan cloning di GitHub Desktop
Anda dapat mengklik tombol Clone seperti yang ditunjukkan di bawah ini.
Setelah melakukan cloning baru, folder dibuat di komputer lokal Anda di mana direktori tersembunyi .git juga ada. 
3. Salin semua berkas yang diperlukan dari komputer lokal Anda ke folder clone di komputer Anda
Anda perlu menyalin semua berkas yang diperlukan, gambar, berkas README, dan sebagainya ke folder clone.

4. Beralih ke GitHub Desktop dan commit ke main
Anda dapat melihat berkas yang ditambahkan ke folder clone juga terlihat di GitHub Desktop. Terakhir, tulis pesan Anda dan tekan Commit to main.

5. Publikasikan cabang di GitHub Desktop untuk mengunggah semua berkas Anda ke GitHub
Anda dapat mengklik Publish Branch untuk memublikasikan semua konten lokal Anda ke GitHub.

Anda dapat melihat repositori Anda di GitHub setelah menyelesaikan semua langkah.
Permintaan Git PULL
Pull request adalah fitur GitHub yang memungkinkan Anda memberi tahu pengelola proyek tentang perubahan yang Anda dorong ke repositori. Ini tidak sama dengan perintah git pull—pull request adalah cara untuk mengusulkan dan meninjau perubahan sebelum digabungkan ke cabang utama.
Perintah sederhana untuk menarik dari sebuah cabang adalah:
git pull 'remote_name' 'branch_name'
Perintah git pull adalah gabungan dari git fetch yang mengambil commit terbaru ke repositori lokal dan git merge, yang akan menggabungkan cabang dari remote ke cabang lokal. Selain itu, remote_name adalah nama repositori dan branch_name adalah nama cabang spesifik.
Anda akan melihat dua cara berbeda untuk menggunakan permintaan PULL.
PULL Request melalui Command Line
Anda dapat melihat berkas README di bawah ini yang mengandung salah ketik. Berkas README memiliki kata "contain" yang salah eja menjadi "containnns". Pemilik repositori ini adalah MNALO, dan Olivia adalah kolaborator. Ia akan memperbaiki kesalahan tersebut dan mengajukan PULL Request. Anda akan melihat proses membuat PULL Request melalui contoh khusus yang diberikan di bawah ini.
Pada berkas di atas, Anda dapat melihat salah ketik pada kata "containnns".
1. Fork repositori
"Fork" adalah salinan dari sebuah repositori. Melakukan fork pada repositori memungkinkan Anda bereksperimen dengan perubahan tanpa memengaruhi proyek asli. (Sumber)

2. Buka bash di komputer Anda
Anda perlu berpindah ke path atau folder yang diperlukan menggunakan perintah cd, dan kontennya dapat dilihat menggunakan perintah ls, yang akan mencantumkan semua berkas yang ada di direktori. Dalam kasus kita, Anda dapat melihat 'README.md' ada.

3. Buat cabang baru
Anda dapat membuat cabang baru menggunakan git checkout -b 'branch_name'. Pada kode di atas, flag -b digunakan untuk membuat cabang baru, dan branch_name digunakan untuk memberikan nama spesifik pada cabang, dan dengan checkout, cabang akan berpindah ke cabang yang baru dibuat.

4. Lakukan perubahan menggunakan vim dari bash atau penggantian langsung dari berkas README asli
Anda dapat mengubah kata "containnns" menjadi "contains" di berkas README, dan perubahan beserta status saat ini dapat dilihat menggunakan perintah berikut.
5. Menambahkan dan melakukan commit berkas ke repositori
Anda perlu menambahkan dan melakukan commit menggunakan perintah berikut.

6. Push repositori ke GitHub
Anda perlu mendorong konten dengan git push origin 'branch_name'. Pada kode di atas, origin adalah repositori jarak jauh, dan 'branch_name' adalah cabang yang diperlukan tempat Anda perlu mengunggah konten lokal Anda.

7. PULL request untuk cabang tertentu di GitHub
Anda dapat masuk ke repositori Anda di GitHub dan melihat bahwa ada cabang baru.
Anda sekarang dapat melanjutkan ke langkah 8, tetapi ada kebutuhan untuk pembaruan repositori lokal dengan repositori upstream.
Alternatifnya, Anda dapat menjalankan git pull-request di command line dan menyelesaikan PULL Request ke GitHub, yang akan memaksa Anda untuk mendorong cabang saat ini ke repositori jarak jauh.

8. Buka Pull request
Anda perlu mengklik tombol Create pull request untuk menyelesaikan tindakan.

Menghapus Cabang setelah PULL Request Digabungkan
Anda perlu masuk ke halaman utama repositori dan klik Pull requests.

Anda perlu mengklik Closed untuk melihat daftar semua PULL Request yang telah Anda buat, tetapi saat ini hanya ada satu yang perlu dipilih. Itulah yang terkait dengan cabang yang ingin Anda hapus.

Sekarang Anda dapat mengklik Delete branch untuk menyelesaikan tindakan.

Pemilik repositori dapat melihat semua commit, pull request, dan sebagainya yang dibuat oleh kolaborator dan lainnya. Perubahan yang dibuat oleh seseorang bisa bersifat signifikan, perbaikan cepat untuk bug, kesalahan, dan sebagainya, dan ditambahkan ke proyek.

Pemilik sekarang mengklik "Merge pull request". Selain itu, ia akan mengklik "Confirm merge" melalui proses berikut.


Perubahan terakhir yang dibuat pada berkas README.md dengan perbaikan salah ketik ada di bawah ini.

PULL Request melalui GitHub Desktop
Berkas "imp" berisi salah ketik di mana MNALO adalah pemilik dan Olivia adalah kolaborator yang mengikuti proses berikut untuk membuat PULL Request dari GitHub Desktop.
1. Melakukan cloning dan membuka ke desktop
Sebuah proyek di-clone dan diklik "Open in Desktop".

2. Buat cabang baru
Dibuat cabang baru, "fix-typo-imp".

3. Lakukan perubahan pada berkas imp dari text editor
Anda dapat mengubah konten berkas imp, memperbaiki salah ketik, dan menambahkan beberapa teks.
4. Commit perubahan
Sebuah pesan commit ditulis dan "Commit to fix-typo-imp" diklik.

5. Publikasikan cabang
Sekarang Anda dapat memublikasikan cabang, yang akan mendorong commit ke GitHub.

6. Buat PULL Request
Sekarang Anda dapat membuat PULL Request dengan mengklik Create pull request.
Anda juga sekarang dapat menulis pesan lalu klik Create pull request lagi.

Proses selanjutnya sama seperti di atas pada "PULL Request melalui Command Line".
Kesimpulan
Langkah berikutnya, coba GitHub Concepts kami untuk terus berlatih dengan tugas sehari-hari. Saya juga akan memperoleh Sertifikasi GitHub Foundations kami, yang dibangun hasil kemitraan kami dengan GitHub. Menyelesaikannya terlihat baik di resume, plus ada diskon besar untuk biaya ujian saat Anda menuntaskan kursus. Terakhir, saya akan melihat GitHub Actions, karena semakin sering digunakan dalam workflow CI/CD yang berkaitan dengan operasi push/pull.
FAQs
Apa itu perintah Git push?
Perintah git push digunakan untuk mengunggah konten dari repositori lokal Anda ke repositori jarak jauh seperti GitHub. Ini penting untuk berbagi perubahan Anda dengan orang lain atau menyinkronkan pengembangan lokal Anda dengan repositori publik atau bersama.
Bagaimana cara melakukan Git pull request?
Git pull request bukan sekadar perintah Git langsung, melainkan fitur yang disediakan oleh GitHub untuk memberi tahu pengelola proyek tentang perubahan yang telah Anda dorong ke repositori di GitHub. Anda memulainya dengan membuat perubahan di fork repositori, mendorong perubahan tersebut, lalu mengirimkan pull request melalui antarmuka web GitHub.
Apa perbedaan antara git pull dan git fetch?
git pull melakukan dua hal: mengambil perubahan dari cabang remote dan kemudian segera menggabungkannya ke cabang Anda saat ini. git fetch, di sisi lain, hanya mengambil perubahan dari repositori jarak jauh tetapi tidak menggabungkannya, sehingga Anda dapat meninjau perubahan tersebut sebelum mengintegrasikannya ke cabang Anda.
Bisakah saya menghapus cabang setelah menggabungkan pull request?
Ya, setelah pull request digabungkan, Anda dapat dengan aman menghapus cabang tersebut karena sudah menyelesaikan tujuannya. Menghapus cabang membantu menjaga repositori tetap rapi dan mudah dikelola.
Apa prasyarat untuk menggunakan GitHub Desktop untuk operasi Git?
Untuk menggunakan GitHub Desktop, Anda perlu mengunduh dan memasang aplikasi di sistem Anda, memiliki akun GitHub, dan idealnya memahami alur kerja GitHub. Ini adalah antarmuka yang ramah pengguna yang menyederhanakan banyak perintah Git menjadi tindakan yang dapat diklik.
Bagaimana cara menyelesaikan konflik selama Git pull request?
Konflik terjadi ketika perubahan pada satu cabang tumpang tindih dengan perubahan pada cabang lain sehingga tidak dapat digabungkan secara otomatis. Untuk menyelesaikannya, Anda harus mengedit berkas secara manual untuk memutuskan seperti apa konten akhirnya, memperbarui perubahan, lalu menyelesaikan proses merge. Alat di dalam GitHub dan GitHub Desktop dapat membantu mengidentifikasi dan menyelesaikan konflik ini.
Apa yang mendorong GitHub mengubah nama cabang default dari master menjadi main?
GitHub mengubah nama cabang default untuk sejalan dengan praktik bahasa yang inklusif. Istilah "master" dipandang sebagian orang berpotensi tidak sensitif, dan "main" dipilih sebagai alternatif yang netral dan deskriptif.


