Her alan, kodunun her üretim derlemesini numaralı bir sürüm olarak tutar. Bu sayfa sürümün yaşam döngüsünü, staged ve production hedeflerini, önizleme bağlantılarını, canlıya alma ve geri alma kurallarını ve paneldeki Sürümler ekranını anlatır. Örnekler tema komutlarıyla verilmiştir; uygulamalarda aynı işlemler tecof app push|versions|promote|rollback ile yapılır.
Sürümler alanın kodunu kapsar. Sayfa içerikleri, ürünler, CMS kayıtları ve mağaza ayarları sürümlenmez; canlıya alma ve geri alma onları değiştirmez.
Sürüm Nedir#
- Bir sürüm, alan deposundaki bir commit ve onun üretim derlemesidir. Numara (
v1,v2, …) alan başına artar ve bir kez verilir. - CLI push'ları dışında
maindalına giden her yayın da sürüm olur: Cloud IDE kayıtları (ide), AI tema işleri (ai),tecof app deploy(cli) ve diğer commit'ler (git). Önizleme (production olmayan) derlemeleri sürüm değildir. - Staged bir sürüm canlıya alındıktan sonra Vercel'in
maindalı için yaptığı ikinci derleme aynı sürüme bağlanır; yeni numara açılmaz. Elle yeniden dağıtılan bir commit de mevcut sürümüne bağlanır. - Sürüme
v12,12ya da sürüm kimliğiyle başvurulur. sourcealanını okuyan araçlar tanımadıkları bir değeri genel bir kaynak olarak ele almalıdır; değer listesi genişleyebilir.
Durumlar#
| Durum | Panelde | Anlamı |
|---|---|---|
uploading | Yükleniyor | Commit kuruluyor |
queued | Sırada | Derleme sırada |
building | Derleniyor | Derleme sürüyor |
ready | Hazır | Derleme başarılı; önizlenebilir ve canlıya alınabilir |
error | Hata | Derleme ya da commit başarısız; errorMessage ve tecof theme logs vN |
canceled | İptal edildi | Derleme iptal edildi ya da --prod push'ta main aynı anda ilerlediği için commit main dalına yazılamadı (errorMessage: "base-moved") |
push ─▶ uploading ─▶ queued ─▶ building ─┬─▶ ready ─┬─▶ staged: promote ile canlıya çıkar
│ └─▶ production: derleme bitince canlıya çıkar
└─▶ error | canceledCLI push sırasında sürümü ready, error ya da canceled olana kadar yoklar. Sonradan izlemek için:
tecof theme versions # liste (varsayılan 20, --limit ile en çok 100)
tecof theme versions v12 # tek sürüm; durum, commit, taban, adres, zamanlarStaged ve Production#
| Staged (varsayılan) | Production (--prod) | |
|---|---|---|
| Komut | tecof theme push | tecof theme push --prod |
main dalı | Değişmez; commit tecof/vN etiketinde durur | Commit main dalına hızlı ileri yazılır |
| Derleme | Canlı sitenin ortam değişkenleriyle tam üretim derlemesi; alan adı atanmaz | main dalının üretim derlemesi |
| Canlıya çıkış | promote ile, yeniden derlemeden | Derleme bitince kendiliğinden |
main ilerlemişse | Push başarılı olur; canlıya alma 409 base-moved alır | Push 409 base-moved alır, sürüm açılmaz |
| Derleme sayısı | İki: staged derleme ve canlıya almadan sonra main derlemesi | Bir |
| Onay | Push onay istemez; promote onay ister | Push onay ister |
Uygulamalarda push her zaman main dalının o anki hâlinin üstüne kurulur ve klasör istenen son durum sayılır; temalardaki gibi yerel taban tutulmaz.
Aktivasyon#
Push, sürüm ayrıntısı, canlıya alma ve geri alma yanıtları sürümün canlıya göre konumunu activation.outcome ile verir:
| Değer | Anlamı |
|---|---|
activated | Sürüm canlıda |
staged | Hazır, hiç canlıya alınmadı; promote bekliyor |
pending | Derleme sürüyor ya da canlıya alma / geri alma Vercel'de sırada. Sürüm okundukça sonuçlanır |
rolled-back | Geri alma yanıtında: geri alma yapıldı, alan geri alınmış durumda. Sürüm ayrıntısında: sürüm hazır ama alan geri alınmış olduğu için canlıya çıkmadı |
superseded | Başka bir sürüm canlıda |
Başarısız ya da iptal edilmiş sürümde outcome null olur. Nesne ayrıca liveVersion, rolledBack ve diagnostics alanlarını taşır. Staged bir derlemenin beklenmedik şekilde alan adı alması diagnostics içinde unexpected-activation olarak bildirilir.
Önizleme Bağlantıları#
tecof theme open vN ve paneldeki Önizle düğmesi hazır bir sürümün kendi adresini açar. Sürüm adresleri Vercel dağıtım adresleridir (*.vercel.app).
Alanın Vercel projesinde dağıtım koruması açıksa sürüm adresleri kilitlidir. Tecof proje başına bir erişim sırrı üretir ve bağlantıya ekler:
Metin https://<dağıtım>.vercel.app/?x-vercel-protection-bypass=<sır>&x-vercel-set-bypass-cookie=trueBağlantı tarayıcıya bir erişim çerezi bırakır; aynı adreste sonraki gezinmeler çerezle açılır.
Bağlantı sır içerir. Sır proje geneli olduğu için tam bağlantıyı bilen herkes yalnız o sürümü değil, alanın bütün korumalı sürüm adreslerini açabilir. Bağlantının son kullanma zamanı yoktur (
expiresAt: null). Yalnız yetkili kişilerle paylaşın.CLI sırrı terminalde ve
--jsonmakbuzunda maskeler (x-vercel-protection-bypass=***); tam bağlantıyı--show-secretbasar. Tarayıcıda açılan bağlantı her zaman tamdır.Panel bağlantıyı yalnız açtığı yeni sekmeye verir; panelin kendisinde saklamaz ve göstermez.
Koruma kapalıysa bağlantı düz dağıtım adresidir ve yanıtta
protected: falseolur.Bağlantıyı alana okuma erişimi olan herkes alabilir;
readyetkili CI token'ı dahil.
Canlıya Alma#
tecof theme promote vN · panelde Canlıya al
- Sürüm
readyolmalıdır; değilse409 version-not-ready. - Yeniden derleme yapılmaz; alan adları saniyeler içinde sürümü gösterir. Vercel isteği sıraya alırsa sonuç
pendingolur ve sürüm okundukça (tecof theme versions vN) sonuçlanır. - Hiç canlı olmamış staged sürüm:
maindalı sürümün commit'ine hızlı ileri alınır. Bu yalnızmainhâlâ sürümün tabanındaysa yapılır; değilse işlem hiç başlamaz ve409 base-moveddöner (data.mainSha,data.baseSha). Canlıya alma sürerkenmainilerlerse (yarış) Tecof önceki canlı derlemeye döner ve yine409 base-moveddöner (data.reverted: true). - Bilinen bedel: hızlı ileri alma, Vercel'in
maindalındaki aynı commit'i bir kez daha derlemesine yol açar. İçerik aynıdır, canlı site etkilenmez ve ikinci derleme aynı sürüme bağlanır; yalnız derleme süresi harcanır. Önizlemeye ihtiyacınız olmayan değişikliklerde--prodtek derlemeyle yayınlar. - Zaten
maindalında olan sürüm (production hedefli, ör. geri almadan sonra ileri alma):maindeğişmez vebase-moveddenetimi yapılmaz. - Daha önce canlıda olmuş sürüm: Vercel'in geri alma mekanizmasıyla canlıya alınır; alan geri alınmış durumda kalır (aşağıda).
- Zaten canlı olan sürümü canlıya almak bir şey değiştirmez (
activation.noop: true). - Alan başına aynı anda tek commit, canlıya alma ya da geri alma çalışır; diğeri
409 space-busyalır (data.retryAfterSec).
Geri Alma#
tecof theme rollback [vN] · panelde Geri al
- Yalnız daha önce canlıda olmuş ve
readydurumdaki bir sürüme geri alınabilir. Hiç canlı olmamış bir sürüm için409 rollback-target-invalid(data.reason: "never-live") döner; o sürümüpromoteile canlıya alın. - Sürüm verilmezse şu anki canlı sürüm dışında en son canlıda olmuş sürüme dönülür. Böyle bir sürüm yoksa
409 rollback-target-invalid(data.reason: "no-previous-version"). - Geçiş anlıktır ve yeniden derleme yapılmaz.
maindalına dokunulmaz: daha yeni değişikliklermaindalında kalır ama canlıda olmaz. - Zaten canlı olan sürüme geri almak bir şey değiştirmez.
Geri Almadan Sonra Yayınlar#
Geri almadan sonra Vercel, main dalının yeni derlemelerine alan adlarını kendiliğinden atamayı durdurur. Tecof alanı geri alınmış olarak işaretler: rolledBack: true, tecof spaces ls çıktısında rolled-back sütunu, panelde "Canlı site vN sürümüne geri alındı" bandı.
Tecof'ta main dalına giden her yayın bir yayın niyetidir. Bu yüzden alan geri alınmışken staged olmayan yeni bir üretim derlemesi hazır olduğunda — Cloud IDE kaydı, AI tema işi, tecof theme push --prod, tecof app push --prod, tecof app deploy ya da main dalına giden başka bir commit — Tecof o derlemeyi kendiliğinden canlıya alır, geri alınmış işaretini kaldırır ve mağazanın etkinlik kaydına "geri alma yeni yayınla kaldırıldı" kaydı düşer. Böylece Cloud IDE ya da AI ile yayın yapan biri "yayınladım ama canlıda değil" durumunda kalmaz.
| Olay | Sonuç |
|---|---|
main dalına yeni yayın (Cloud IDE, AI, --prod, tecof app deploy, diğer commit'ler) | Derleme bitince Tecof canlıya alır; geri alınmış işareti kalkar |
| Staged push | Canlıya çıkmaz; geri alınmış durum sürer |
| Hiç canlı olmamış bir sürümü canlıya alma | Sürüm canlıya çıkar; geri alınmış işareti kalkar |
| Daha önce canlıda olmuş bir sürümü canlıya alma | Sürüm canlıya çıkar; alan geri alınmış durumda kalır. Sonraki main yayınları yine yukarıdaki kuralla canlıya alınır |
Otomatik canlıya alma anında alanda başka bir canlıya alma ya da geri alma sürüyorsa otomatik adım atlanır ve yeni sürüm
readyolarak kalır. Bu durumda sürümü panelden ya datecof theme promote vNile canlıya alın.
Paneldeki Sürümler Ekranı#
- Tema: Temalar → tema kartındaki ⋯ menüsü → Sürümler (
https://app.tecof.com/app/themes/<kurulum kimliği>/versions). Cloud IDE araç çubuğundaki Sürümler bağlantısı aynı ekranı yeni sekmede açar. - Uygulama: geliştirici portalında uygulamanın Sürümler sekmesi (
https://app.tecof.com/partner/apps/<uygulama kimliği>?tab=versions). Yalnız Tecof barındırmalı uygulamalarda; eski Dağıtımlar sekmesi (tecof app deploy) olduğu gibi durur.
| Bölüm | İçerik |
|---|---|
| Canlı özet | Canlı sürüm, canlıya alınma zamanı, alan adı ve hızlı "vM sürümüne geri al" |
| Sürüm listesi | Numara, Canlı rozeti, durum, hedef (Hazırlık = staged, Üretim = production), kaynak, mesaj, kısa commit, yazar, zaman, yüklenen ve silinen dosya sayısı, hata metni |
| Eylemler | Önizle, Canlıya al, Geri al, Günlük; canlı sürümde Canlı siteyi aç |
| Yenile | Canlı sürümü Vercel'den yeniden okur |
| Geri alınmış bant | "Canlı site vN sürümüne geri alındı" ve en yeni hazır sürüm için İleri al (vM) |
| Alan kimliği | CLI'da --space ile kullanılan kimlik ve kopyalama düğmesi |
| Boş durum | İlk sürüm için CLI hızlı başlangıç komutları |
- Canlıya alma ve geri alma her zaman onay penceresi açar; sonuç sunucunun döndüğü aktivasyonla bildirilir.
- Süren bir derleme varken liste kendiliğinden tazelenir; derleme bitince bildirim gösterilir.
- Mağaza paketi özel temaları kapsamıyorsa liste ve önizleme açık kalır, canlıya alma ve geri alma kapanır.
- Katalog temalarında ekran salt okunurdur ve Özel temaya kopyala önerir (Salt okunur alanlar).
Derleme Günlükleri#
tecof theme logs vN (uygulamada tecof app logs vN) ve paneldeki Günlük düğmesi sürümün derleme günlüğünün son 300 satırını gösterir. Tecof token biçimleri günlükte maskelenir. Derleme başarısız olursa tecof theme push son 40 satırı kendisi basar.
Etkinlik Kaydı#
Tema alanlarında push, canlıya alma, geri alma ve otomatik canlıya alma mağazanın etkinlik kaydına kod kategorisinde yazılır: işlemi yapan kullanıcı, kullanılan token, sürüm ve sonuç.