Mengelola repositori Git di Visual Studio
Jendela Repositori Git memberikan pengalaman Git layar penuh yang membantu Anda mengelola repositori Git dan tetap mendapatkan informasi terbaru tentang proyek tim Anda. Misalnya, Anda mungkin perlu mengatur ulang, mengembalikan, atau memilih commit tertentu, atau hanya membersihkan riwayat commit Anda. Jendela Repositori Git juga merupakan tempat yang tepat untuk memvisualisasikan dan mengelola cabang Anda.
Kontrol versi dengan Visual Studio mudah dilakukan dengan Git. Dan, Anda dapat bekerja dari jarak jauh dengan penyedia Git pilihan Anda, seperti GitHub atau Azure DevOps. Atau, Anda dapat bekerja secara lokal tanpa penyedia sama sekali.
Buka jendela Repositori Git
Untuk membuka jendela Repositori Git, pilih View>Git repository (atau tekan Ctrl+0, Ctrl+R), atau tekan Ctrl+Q dan di bawah Fitur, cari Git repo.
Menjelaskan penerapan dengan GitHub Copilot Chat
Dengan Visual Studio 2022 versi 17.10 pratinjau 2 dan yang lebih baru dan ekstensi GitHub Copilot, Anda dapat menggunakan AI untuk menghasilkan deskripsi penerapan terperinci yang menjelaskan perubahan dalam penerapan tersebut. Tekan tombol Jelaskan untuk meminta Agar GitHub Copilot membuat deskripsi penerapan. Untuk menginstal GitHub Copilot, lihat Menginstal dan mengelola GitHub Copilot di Visual Studio.
Mengubah komit terakhir (memperbaiki)
Memperbarui komit terakhir disebut mengamendemen di Git, dan ini adalah kasus penggunaan umum. Terkadang Anda hanya perlu memperbarui pesan commit, atau Anda mungkin perlu menyertakan perubahan di menit-menit terakhir.
Anda dapat mengubah commit di baris perintah dengan menggunakan perintah berikut:
git commit --amend
Jendela Repositori Git memudahkan untuk memperbarui pesan commit terbaru Anda. Buka detail penerapan terakhir dengan mengklik ganda, lalu pilih opsi Edit di samping pesan penerapan.
Setelah selesai mengedit pesan komit, pilih Ubah.
Jika Anda perlu menyertakan perubahan kode ke komit terakhir, Anda dapat melakukannya di jendela Perubahan Git. Pilih kotak centang Ubah lalu terapkan perubahan Anda.
Untuk mempelajari lebih lanjut tentang mengamendemen, termasuk cara mengubah pesan commit selain yang terbaru, lihat Alat Git - Mengubah Riwayat di situs web Git.
Gabungkan penerapan (squash)
Untuk menggabungkan serangkaian commit, Git menyediakan opsi untuk menggabungkan commit menjadi satu. Opsi ini dapat membantu jika Anda sering melakukan commit dan berakhir dengan daftar commit yang panjang yang ingin Anda bersihkan sebelum mengunggah ke repositori jarak jauh.
Anda dapat melakukan squash dua commit di command line dengan menggunakan perintah berikut:
git rebase -i HEAD~2
Kemudian perbarui pick
ke squash
, simpan, dan perbarui pesan penerapan.
Untuk menggabungkan penerapan di Visual Studio, gunakan kunci Ctrl untuk memilih beberapa penerapan yang ingin Anda gabungkan. Kemudian klik kanan dan pilih Squash Commits. Visual Studio secara otomatis menggabungkan pesan commit Anda, tetapi terkadang lebih baik untuk menggunakan pesan yang diperbarui. Setelah Anda meninjau dan memperbarui pesan komit, pilih tombol Squash.
Untuk mempelajari selengkapnya tentang squashing, lihat Git Tools - Menulis Ulang Riwayat di situs web Git.
Menggabungkan dan melakukan rebase pada cabang
Jika Anda menggunakan cabang Git untuk mengerjakan berbagai fitur, pada titik tertentu Anda perlu memasukkan pembaruan yang diperkenalkan ke cabang lain. Ini dapat terjadi saat Anda masih mengerjakan cabang fitur Anda. Ini juga dapat terjadi ketika Anda selesai mengerjakan cabang fitur Anda dan perlu menyimpan perubahan Anda dengan menambahkannya ke cabang yang berbeda. Dalam Git, Anda dapat menyertakan pembaruan ini dengan menggabungkan cabang atau merombak ulang cabang.
Nota
Instruksi berikut menggunakan New_Feature sebagai nama contoh untuk cabang fitur. Ganti dengan nama cabang Anda sendiri.
Untuk menggabungkan cabang utama ke cabang fitur Anda pada baris perintah, gunakan perintah berikut:
git checkout New_Feature
git merge main
Untuk melakukan hal yang sama di Visual Studio, lihat cabang fitur dengan mengklik dua kali di daftar cabang. Kemudian klik kanan main dan pilih Gabungkan 'main' ke dalam 'New_Feature'.
Untuk merebase cabang utama ke cabang fitur Anda pada baris perintah, gunakan perintah berikut:
git checkout New_Feature
git rebase main
Untuk melakukan hal yang sama di Visual Studio, lihat cabang fitur dengan mengklik dua kali di daftar cabang. Kemudian klik kanan utama dan pilih Rebase 'New_Feature' ke 'main'.
Untuk mempelajari selengkapnya tentang penggabungan, rebasing, dan percabangan secara umum, lihat Git Branching di situs web Git.
Menyalin komit (cherry-pick)
Salin commit dari satu cabang ke cabang lainnya dengan menggunakan opsi cherry-pick. Tidak seperti merge atau rebase, cherry-pick hanya membawa perubahan dari commit yang Anda pilih, bukan semua perubahan pada cabang. Pemilihan selektif adalah cara yang bagus untuk mengatasi masalah umum ini:
- Tidak sengaja melakukan di cabang yang salah. Pilih secara selektif perubahan ke cabang yang benar lalu reset cabang asli ke komit sebelumnya.
- Mengambil serangkaian commit yang dibuat di cabang fitur, sehingga Anda dapat menggabungkannya kembali ke cabang utama lebih cepat.
- Memindahkan commit tertentu dari cabang utama tanpa melakukan rebase cabang Anda.
Untuk menyalin perubahan dari komit ke cabang Anda saat ini dengan menggunakan baris perintah, gunakan perintah berikut:
git cherry-pick 7599e530
Untuk melakukan hal yang sama di Visual Studio, pratinjau cabang dari mana Anda ingin melakukan cherry-pick sebuah commit dengan memilihnya dengan satu klik. Lalu klik kanan pada komit yang ditargetkan dan pilih Cherry-Pick.
Setelah operasi selesai, Visual Studio menampilkan pesan sukses. Komit yang Anda pilih secara selektif muncul di bagian Keluar.
Untuk mempelajari lebih lanjut tentang cherry-pick commit, lihat halaman web Git untuk perintah cherry-pick.
Mengembalikan perubahan
Gunakan perintah revert untuk membatalkan perubahan yang dibuat dalam commit yang telah didorong ke cabang bersama. Perintah kembali membuat penerapan baru yang membatalkan perubahan yang dibuat pada penerapan sebelumnya. Perintah kembali tidak menulis ulang riwayat repositori, yang membuatnya aman digunakan saat Anda bekerja dengan orang lain.
Untuk mengembalikan perubahan yang dibuat dalam komit dengan menggunakan baris perintah, gunakan perintah berikut. Ganti ID contoh dengan ID dari commit nyata di cabang Anda.
git revert 53333305
git commit
Dalam contoh sebelumnya, perintah akan membatalkan perubahan yang dibuat dalam penerapan 53333305 dan membuat penerapan baru di cabang. Komit asli masih ada dalam sejarah Git. Untuk melakukan hal yang sama di Visual Studio, klik kanan commit yang ingin Anda revert lalu pilih Revert. Setelah Anda mengonfirmasi tindakan dan operasi selesai, Visual Studio menampilkan pesan keberhasilan dan commit baru muncul di bagian Keluar.
Pilih commit baru untuk mengonfirmasi bahwa commit tersebut membatalkan perubahan dari commit yang dikembalikan.
Item menu Kembalikan mungkin berwarna abu-abu (dinonaktifkan) dalam keadaan tertentu, seperti untuk penerapan penggabungan atau saat operasi Git berjalan.
Untuk mempelajari selengkapnya tentang mengembalikan perubahan, lihat halaman web Git untuk perintah revert.
Mereset cabang ke status sebelumnya
Gunakan perintah reset untuk mengembalikan cabang di repositori lokal Anda ke konten dari commit sebelumnya. Tindakan ini membuang semua perubahan yang telah terjadi sejak komit yang sedang Anda reset cabang Anda ke sana.
Peringatan
Jangan reset cabang bersama, karena Anda mungkin menghapus pekerjaan orang lain. Gunakan perintah 'revert' sebagai gantinya.
Untuk mengatur ulang cabang ke status sebelumnya dengan menggunakan baris perintah, gunakan perintah berikut. Ganti ID contoh commit dengan ID commit nyata di branch Anda.
git reset --hard 53333305
Bagian --hard
dari perintah memberi tahu Git untuk mengatur ulang file ke status komit sebelumnya dan membuang perubahan yang telah terstage. Untuk melakukan hal yang sama di Visual Studio, klik kanan pada komit yang Anda ingin reset menjadi cabang Anda, kemudian pilih Reset>Hapus Perubahan (--hard).
Untuk mempelajari selengkapnya tentang mengatur ulang cabang, lihat halaman web Git untuk perintah reset.