Perubahan yang Mengganggu
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Dokumentasi ini menjelaskan cara mengatasi perubahan yang memecah dalam aplikasi Anda menggunakan saluran yang versi.
Dengan cara ini, Anda dapat mempertahankan versi aplikasi yang berbeda sambil memastikan pengguna menerima pembaruan yang kompatibel.
Skenario ContohJudul bagian “Skenario Contoh”
- Versi Aplikasi 1.2.3 (versi lama) - menggunakan saluran produksi
- Versi Aplikasi 2.0.0 (versi baru dengan perubahan besar) - menggunakan saluran v2
- Pembaruan Langsung 1.2.4 (kompatibel dengan 1.2.3)
- Pembaruan Langsung 2.0.1 (kompatibel dengan 2.0.0)
Strategi: Selalu Gunakan defaultChannel untuk Versi Utama
Judul Bagian: Strategi: Selalu Gunakan defaultChannel untuk Versi UtamaRekomendasi: Setel defaultChannel saluran untuk setiap versi utama. Dengan demikian, Anda dapat selalu memperbarui aplikasi untuk kelompok pengguna tertentu tanpa bergantung pada penugasan saluran dinamis.
// Version 1.x releasesdefaultChannel: 'v1'
// Version 2.x releasesdefaultChannel: 'v2'
// Version 3.x releases (future)defaultChannel: 'v3'1. Buat Channel untuk Versi Baru
Judul Bagian “1. Buat Channel untuk Versi Baru”# Create channel for version 2.xnpx @capgo/cli channel create v22. Perbarui Capacitor Konfigurasi untuk Versi 2.0.0
Judul Bagian “2. Perbarui Capacitor Konfigurasi untuk Versi 2.0.0”Perbarui konfigurasi Capacitor Anda sebelum membangun versi 2.0.0 untuk toko aplikasi:
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { appId: 'com.example.app', appName: 'Example App', plugins: { CapacitorUpdater: { // ... other options defaultChannel: 'v2' // All 2.0.0 users will use v2 channel } }};
export default config;3. Kelola Cabang Terpisah Code
Judul bagian: 3. Kelola Cabang Terpisah CodeBuat cabang git terpisah untuk menjaga konsistensi antara versi aplikasi:
# Create and maintain a branch for version 1.x updatesgit checkout -b v1-maintenancegit push origin v1-maintenance
# Your main branch continues with version 2.x developmentgit checkout mainPenting: Tidak pernah push bundle JavaScript ke aplikasi yang lebih tua yang mengharapkan native code/API yang tidak ada. Selalu bangun update dari cabang yang tepat:
- cabang pemeliharaan v1: Untuk update ke aplikasi 1.x (saluran produksi)
- cabang utama: Untuk update ke aplikasi 2.x (saluran v2)
4. Unggah Paket ke Saluran yang Sesuai
Judul Bagian “4. Unggah Paket ke Saluran yang Sesuai”# For 1.x updates: Build from v1-maintenance branchgit checkout v1-maintenance# Make your 1.x compatible changes herenpx @capgo/cli bundle upload --channel production
# For 2.x updates: Build from main branchgit checkout main# Make your 2.x changes herenpx @capgo/cli bundle upload --channel v25. Aktifkan Penugasan Otomatis
Judul Bagian “5. Aktifkan Penugasan Otomatis”# Allow apps to self-assign to v2 channelnpx @capgo/cli channel set v2 --self-assignCatatan
Mengukur untuk Versi Masa Depan
Judul bagian “Mengukur untuk Versi Masa Depan”Ketika Anda merilis versi 3.0.0 dengan perubahan yang lebih berisiko:
# Create channel for version 3.xnpx @capgo/cli channel create v3// capacitor.config.ts for version 3.0.0const config: CapacitorConfig = { // ... plugins: { CapacitorUpdater: { defaultChannel: 'v3' // Version 3.x users } }};Sekarang Anda dapat memperbarui versi apa pun:
productionsaluran → Pengguna versi 1.xv2channel → Pengguna Versi 2.xv3channel → Pengguna Versi 3.x
7. Pembersihan (Setelah Migrasi)
Judul Bagian “7. Pembersihan (Setelah Migrasi)”Setelah semua pengguna telah bermigrasi ke versi 2.x (hitung 3-4 bulan):
- Hapus
defaultChanneldari konfigurasi Capacitor Anda - Hapus saluran v2:
npx @capgo/cli channel delete v2- Hapus cabang v1-maintenance:
git branch -d v1-maintenancegit push origin --delete v1-maintenanceSelalu tes pembaruan secara menyeluruh di setiap saluran sebelum di-deploy
Mengatur Pembaruan Versi 1.x
Judul Bagian “Mengatur Pembaruan Versi 1.x”Untuk mengirimkan pembaruan yang kompatibel dengan versi 1.x:
- Pindah ke cabang v1-maintenance:
git checkout v1-maintenance- Buat perubahan Anda dan komit:
# Make 1.x compatible changesgit add .git commit -m "Fix for v1.x"git push origin v1-maintenance- Buat dan unggah ke saluran produksi:
npx @capgo/cli bundle upload --channel productionTeruskan dari Perubahan yang Memecah
Bagian berjudul “Teruskan dari Perubahan Pembaruan”Jika Anda menggunakan Perubahan Pembaruan untuk merencanakan routing saluran dan peluncuran tahap demi tahap, hubungkannya dengan Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Solusi Pengujian Beta untuk alur produk di Solusi Pengujian Beta, dan Solusi Target Versi untuk alur kerja produk di Solusi Target Versi.