Jika tugas proyek di VS Code tiba-tiba gagal—pemformatan, linting, debugging, atau navigasi berkas—gunakan Extension Bisect untuk mempersempit ekstensi aktif mana yang terlibat. Di Mac, buka Command Palette dengan ⇧⌘P, jalankan Help: Start Extension Bisect, dan ulangi tugas yang sama setelah setiap perubahan. Jika masalah berlanjut, pilih This is bad; jika hilang, pilih Good now. VS Code menguji kelompok ekstensi dan mempersempit pencarian berdasarkan jawaban tersebut. Panduan Extension Bisect dari VS Code
Reproduksi kegagalan yang sama sebelum Anda menguji
Pertama, tuliskan urutan terpendek yang secara konsisten memicu masalah: misalnya, buka berkas tertentu, simpan, dan periksa apakah pemformatan berjalan. Catat apa yang Anda harapkan dan apa yang sebenarnya terjadi. Gunakan proyek, berkas, dan langkah-langkah yang sama persis selama setiap putaran bisect. Hal ini memberikan dasar yang konsisten untuk setiap jawaban; jika gejalanya terjadi sewaktu-waktu atau Anda mengubah tugasnya, hasilnya mungkin tidak dapat mengidentifikasi penyebabnya secara andal.
Periksa apakah perilaku tersebut terbatas pada satu workspace atau terjadi di beberapa workspace. Suatu ekstensi dapat dinonaktifkan secara global atau hanya untuk workspace saat ini, sehingga kegagalan khusus proyek dapat diuji dan nantinya ditangani pada tingkat workspace. Tampilan Extensions dapat diakses dengan ⇧⌘X. Dokumentasi VS Code tentang kontrol ekstensi workspace dan global.
Jalankan Extension Bisect dari Command Palette
Di macOS, tekan ⇧⌘P, ketik Help: Start Extension Bisect, lalu pilih perintah tersebut. VS Code akan menonaktifkan kelompok ekstensi dan meminta Anda menilai apakah masalah masih terjadi. Lakukan langkah-langkah reproduksi yang telah Anda catat sebelum memilih This is bad atau Good now. Bisect menggunakan respons tersebut untuk memilih kelompok berikutnya; terus jawab berdasarkan gejala yang sama sampai VS Code mengidentifikasi suatu ekstensi atau selesai tanpa menemukan satu pun. Panduan resmi menjelaskan proses kelompok demi kelompok ini.
Dengan banyaknya ekstensi yang aktif, mempersempit pencarian dengan membaginya menjadi dua bagian dapat membutuhkan pemeriksaan yang jauh lebih sedikit daripada menonaktifkannya satu per satu. Proses ini bergantung pada umpan balik yang akurat: melaporkan "Good now" saat masalah masih ada, atau "This is bad" saat masalah telah teratasi, dapat menyesatkan pencarian. Panduan bisect juga mencatat bahwa proses ini dimulai dengan memeriksa apakah masalah tetap terjadi saat semua ekstensi dinonaktifkan, karena penyebabnya mungkin berasal dari VS Code itu sendiri.
Konfirmasi hasilnya sebelum mengubah pengaturan Anda
Saat VS Code mengidentifikasi sebuah kandidat, ulangi tugas awal dengan ekstensi tersebut dalam keadaan aktif dan dinonaktifkan. Di tampilan Extensions, temukan ekstensi tersebut, pilih menu roda giginya, lalu pilih opsi penonaktifan yang sesuai. VS Code mungkin meminta untuk memulai ulang host ekstensi; selesaikan permintaan tersebut, lalu reproduksi masalahnya. Aktifkan kembali ekstensi dan periksa lagi. Jika gejala tersebut secara konsisten muncul kembali saat diaktifkan dan menghilang saat dinonaktifkan, Anda memiliki bukti yang lebih kuat bahwa ekstensi tersebut terlibat. Penonaktifan bersifat dapat dibatalkan; pencopotan pemasangan (uninstall) tidak diperlukan untuk diagnosis. Dokumentasi VS Code tentang menonaktifkan dan mengaktifkan ekstensi.
Suatu ekstensi mungkin terlibat tanpa menjadi satu-satunya penyebab. Pengaturan, dependensi, atau interaksinya dengan ekstensi lain bisa berpengaruh. Baca detail Marketplace dan README-nya untuk melihat pengaturan yang ditambahkan serta dependensinya, lalu periksa apakah pembaruan terkini atau perubahan konfigurasi bertepatan dengan saat alur kerja mulai bermasalah. Jika Anda perlu tetap memasang ekstensi tersebut, nonaktifkan hanya untuk workspace yang terdampak jika memungkinkan; jika tidak, biarkan tetap aktif dan laporkan langkah-langkah yang dapat direproduksi beserta ID ekstensi kepada penerbitnya.
Jika bisect tidak menemukan ekstensi
Cobalah perbandingan bersih. Profil VS Code dapat mengisolasi ekstensi dan pengaturan: buat Empty Profile dari editor Profiles, buka proyek yang terdampak dengannya, dan ulangi tugas tersebut. Empty Profile menonaktifkan ekstensi serta pengaturan yang telah diubah, sehingga jika kegagalan tetap terjadi, penyebabnya mungkin adalah inti VS Code, alat perkakas proyek, atau bagian lain dari lingkungan kerja. Jika masalah menghilang, ekstensi atau pengaturan yang disesuaikan kemungkinan terlibat, tetapi profil kosong saja tidak membuktikan yang mana penyebabnya. Dokumentasi profil VS Code.
Anda juga dapat membuka jendela diagnostik dari Terminal dengan code --disable-extensions . saat terminal berada di direktori proyek. Di Mac, shell default Terminal adalah zsh; perintah ini tidak berisi karakter meta shell yang memerlukan tanda kutip khusus. Tindakan ini menonaktifkan ekstensi untuk sesi peluncuran tersebut, yang menjadikannya berguna sebagai perbandingan cepat. Perintah ini tidak mengidentifikasi ekstensi tertentu; gunakan Bisect atau penonaktifan tingkat workspace untuk tujuan tersebut. Perintah code harus tersedia di PATH shell Anda. Dokumentasi VS Code tentang opsi peluncuran ini; Dokumentasi Apple tentang shell default Terminal.
Ketika proyek berperilaku sama saat ekstensi dinonaktifkan, periksa skrip dan alat milik proyek itu sendiri, pengaturan VS Code, serta apakah masalah juga terjadi di editor atau lingkungan lain. Anggap hal-hal ini sebagai petunjuk diagnostik berikutnya, bukan sebagai bukti mutlak bahwa komponen tertentu bertanggung jawab.
Sumber
Resolving extension issues with bisect — Visual Studio Code
Extension Marketplace — Visual Studio Code
Profiles in Visual Studio Code — Visual Studio Code
Visual Studio Code tips and tricks — Visual Studio Code
Change the default shell in Terminal on Mac — Apple Support