KB: Proses Kemas Kini Sendiri
Cara triggerfish update berfungsi, apa yang boleh salah, dan cara memulihkan.
Cara Ia Berfungsi
Arahan kemas kini memuat turun dan memasang keluaran terkini dari GitHub:
Semakan versi. Mengambil tag keluaran terkini dari API GitHub. Jika anda sudah menggunakan versi terkini, keluar awal:
Sudah terkini (v0.4.2)Binaan pembangunan (
VERSION=dev) melangkau semakan versi dan sentiasa meneruskan.Pengesanan platform. Menentukan nama aset binari yang betul berdasarkan OS dan seni bina anda (linux-x64, linux-arm64, macos-x64, macos-arm64, windows-x64).
Muat turun. Mengambil binari dan
SHA256SUMS.txtdari keluaran GitHub.Pengesahan checksum. Mengira SHA256 binari yang dimuat turun dan membandingkannya dengan entri dalam
SHA256SUMS.txt. Jika checksum tidak sepadan, kemas kini dibatalkan.Hentikan daemon. Menghentikan daemon yang sedang berjalan sebelum menggantikan binari.
Penggantian binari. Khusus platform:
- Linux/macOS: Menamakan semula binari lama, memindahkan yang baru ke tempat
- Langkah tambahan macOS: Membersihkan atribut kuarantin dengan
xattr -cr - Windows: Menamakan semula binari lama ke
.old(Windows tidak boleh menimpa eksekutif yang sedang berjalan), kemudian menyalin binari baru ke laluan asal
Mulakan semula daemon. Memulakan daemon dengan binari baru.
Catatan perubahan. Mengambil dan memaparkan nota keluaran untuk versi baru.
Peningkatan Sudo
Jika binari dipasang dalam direktori yang memerlukan akses root (contoh, /usr/local/bin), pengemas kini meminta kata laluan anda untuk meningkat dengan sudo.
Pemindahan Merentasi Sistem Fail
Jika direktori muat turun dan direktori pemasangan berada pada sistem fail berbeza (biasa dengan /tmp pada partition berasingan), penggantian nama atomik akan gagal. Pengemas kini jatuh balik ke salin-kemudian-buang, yang selamat tetapi sebentar mempunyai kedua-dua binari pada cakera.
Apa yang Boleh Salah
"Checksum verification exception"
Binari yang dimuat turun tidak sepadan dengan hash yang dijangkakan. Ini biasanya bermakna:
- Muat turun rosak (isu rangkaian)
- Aset keluaran lapuk atau dimuat naik sebahagian
Pembetulan: Tunggu beberapa minit dan cuba lagi. Jika berterusan, muat turun binari secara manual dari halaman keluaran.
"Asset not found in SHA256SUMS.txt"
Keluaran diterbitkan tanpa checksum untuk platform anda. Ini adalah isu saluran paip keluaran.
Pembetulan: Laporkan isu GitHub.
"Binary replacement failed"
Pengemas kini tidak dapat menggantikan binari lama dengan yang baru. Punca biasa:
- Kebenaran fail (binari dimiliki root tetapi anda menjalankan sebagai pengguna biasa)
- Fail dikunci (Windows: proses lain mempunyai binari terbuka)
- Sistem fail baca-sahaja
Pembetulan:
- Hentikan daemon secara manual:
triggerfish stop - Bunuh sebarang proses lapuk
- Cuba kemas kini semula dengan kebenaran yang sesuai
"Checksum file download failed"
Tidak dapat memuat turun SHA256SUMS.txt dari keluaran GitHub. Semak sambungan rangkaian anda dan cuba lagi.
Pembersihan fail .old Windows
Selepas kemas kini Windows, binari lama dinamakan semula ke triggerfish.exe.old. Fail ini dibersihkan secara automatik semasa permulaan seterusnya. Jika tidak dibersihkan (contoh, binari baru terhempas semasa permulaan), anda boleh memadamnya secara manual.
Perbandingan Versi
Pengemas kini menggunakan perbandingan versioning semantik:
- Mengalihkan awalan
vterdepan (kedua-duav0.4.2dan0.4.2diterima) - Membandingkan major, minor, dan patch secara numerik
- Versi pra-keluaran dikendalikan (contoh,
v0.4.2-rc.1)
Kemas Kini Manual
Jika pengemas kini automatik tidak berfungsi:
- Muat turun binari untuk platform anda dari GitHub Releases
- Hentikan daemon:
triggerfish stop - Gantikan binari:bash
# Linux/macOS sudo cp triggerfish-linux-x64 /usr/local/bin/triggerfish sudo chmod +x /usr/local/bin/triggerfish # macOS: bersihkan kuarantin xattr -cr /usr/local/bin/triggerfish - Mulakan daemon:
triggerfish start
Kemas Kini Docker
Pelancaran Docker tidak menggunakan pengemas kini binari. Kemas kini imej bekas:
bash
# Menggunakan skrip pembungkus
triggerfish update
# Secara manual
docker compose pull
docker compose up -dSkrip pembungkus menarik imej terkini dan memulakan semula bekas jika ada yang sedang berjalan.
Catatan Perubahan
Selepas kemas kini, nota keluaran dipaparkan secara automatik. Anda juga boleh melihatnya secara manual:
bash
triggerfish changelog # Versi semasa
triggerfish changelog --latest 5 # 5 keluaran terakhirJika pengambilan catatan perubahan gagal selepas kemas kini, ia dilog tetapi tidak menjejaskan kemas kini itu sendiri.
