Skip to main content

Koko projektihistorian siirto

Community Editionin 3.5.x-julkaisu sisältää Full Project History -ominaisuuden, joka on jo käytettävissä SaaS-palvelussamme overleaf.com Kun instanssisi on päivitetty Overleaf CE -versioon 3.5.13, kaikki uudet projektit käyttävät oletuksena Full Project History -ominaisuutta. Olemassa olevat projektit käyttävät edelleen vanhaa historiajärjestelmää, kunnes ne siirretään.
Jos päivität versioon 3.5.13 ja päätät palata aiempaan versioon, sinun tulee palauttaa järjestelmä täydestä varmuuskopiosta. Versiossa 3.5.13 luotujen projektien historia ei ole yhteensopiva Overleaf CE:n aiempien versioiden kanssa.
Uusi Full Project History tuo käyttäjille useita parannuksia:
  • Se seuraa muutoksia binääritiedostoissa, mitä vanha järjestelmä ei tue.
  • Nimettyjä versioita tuetaan.
  • Järjestelmä on yleisesti luotettavampi, ja tietojen menettämisen riski on pienempi.
Lisätietoja koko projektihistoriasta on Full Project History -dokumentaatiossa.

Olemassa olevien projektien siirtäminen

1

Luo varmuuskopio

Luo instanssistasi täysi varmuuskopio, joka sisältää johdonmukaisen tilannevedoksen mongo-, redis- ja sharelatex-hakemistoista.
2

Päivitä

Päivitä sharelatex/sharelatex-imagen versioksi 3.5.13.Toolkit: Päivitä Toolkit uusimpaan versioon $ bin/upgrade-skriptillä ja muuta tiedoston config/version arvoksi 3.5.13.
3

Käynnistä instanssi

Ihannetapauksessa käyttäjien pääsy instanssiisi kannattaa estää siirron ajaksi, jotta vältetään tietojen menetys siinä tapauksessa, että varmuuskopio joudutaan palauttamaan. Lisätietoja tämän tekemisestä on kohdassa Offline-siirto.
4

Odota, kunnes kaikki palvelut ovat käynnissä

Odota, kunnes kaikki palvelut ovat käynnissä (katso alla oleva komento)
5

Suorita siirtoskripti

--force-clean tyhjentää osittain siirretyt projektihistorian tiedot uudesta järjestelmästä, mikä mahdollistaa siirron uudelleenyrittämisen yksittäisille projekteille, joiden siirto epäonnistui aiemmilla kerroilla;--fix-invalid-characters korvaa tulostumattomat merkit, joita uusi historiajärjestelmä ei tue;--convert-large-docs-to-file muuntaa dokumentit, jotka ylittävät 2 Mt:n muokattavuusrajan, ei-muokattaviksi tiedostoiksi)Tulosteen pitäisi näyttää tältä:
Jos siirto onnistuu, saat poistumiskoodin 0, ja viimeiset rivit osoittavat, ettei epäonnistumisia ollut:
Voit avata pääsyn uudelleen käyttäjillesi (katso seuraava vaihe). Jos epäonnistumisia esiintyy, katso alla oleva vianmääritysosio. Voit silti avata sivuston uudelleen, vaikka ongelmia ei korjattaisi heti, ja siirtämättömät projektit pysyvät vanhassa historiajärjestelmässä.
6

Avaa sivusto uudelleen

Jos valitsit offline-siirron, sinun on avattava sivusto uudelleen. Jos olet edelleen kirjautuneena sisään, toimi näin:
  1. Napsauta Admin-painiketta ja valitse Manage Site
  2. Napsauta Open/Close Editor -välilehteä
  3. Napsauta Reopen Editor -painiketta
Jos olet sulkenut selaimesi, sinun on käynnistettävä sivusto uudelleen komennolla $ bin/up.

Offline-siirto

Estääksesi käyttäjiä kirjautumasta sisään historian siirtoskriptin ollessa käynnissä, toimi seuraavasti:
  • Kirjaudu Overleaf-instanssiisi ylläpitäjän tilillä
  • Napsauta Admin-painiketta ja valitse Manage Site
  • Napsauta Open/Close Editor -välilehteä
  • Napsauta Close Editor -painiketta
  • Napsauta Disconnect all users -painiketta
Kun tämä on tehty, sisään kirjautuneet käyttäjät ohjataan huoltosivulle, ja kirjautumissivulle saapuvat uudet käyttäjät näkevät huoltosivun eivätkä voi kirjautua sisään.

Online-siirto

Siirtoskriptit on mahdollista suorittaa sovelluksen ollessa edelleen käynnissä. Tällöin on otettava huomioon muutamia seikkoja:
  • Siirtoprosessi kuormittaa suoritinta voimakkaasti, joten resurssien käyttöä kannattaa seurata skriptin ollessa käynnissä.
  • Suurella --concurrency-arvolla joidenkin palveluiden (erityisesti track-changes) tapahtumasilmukka saattaa estyä ajoittain, mikä heikentäisi käyttökokemusta. Suosittelemme aloittamaan oletusarvolla --concurrency=1.
  • Voit pysäyttää skriptin milloin tahansa. Kun käynnistät sen uudelleen, siirto jatkuu siitä, mihin se jäi. Tämä on hyödyllistä, jos haluat suorittaa siirron hiljaisempina aikoina (esim. yöllä).
Suosittelemme sulkemaan sivuston ja suorittamaan siirron offline-tilassa huoltoikkunan aikana, kun projekteja on alle 1000 (db.projects.count()). Jos projekteja on paljon, voit suorittaa skriptin ja seurata sen edistymistä ja päättää sitten tilanteesi mukaan, jatketaanko suoritusta online- vai offline-tilassa.

Vanhan historiatiedon siivoaminen

Vanhan historiatiedon siivoamiseen tarkoitettu skripti lisättiin Server Pro -versioihin 3.5.6, 4.0.6 ja 4.1.0.
Skriptin voi suorittaa, kun kaikki projektit on siirretty. Sitä voi käyttää myös tilan vapauttamiseen online-siirron aikana.
Server Pron versiota 3.5.13 vanhemmissa versioissa skripti poistaa kokoelmien docHistory ja docHistoryIndex sisällön. MongoDB ei vapauta levytilaa dokumenttien poistamisen jälkeen, vaan käyttää tilan uudelleen saman kokoelman tuleville dokumenteille. Historian siirron jälkeen näihin kokoelmiin ei enää kirjoiteta mitään, joten levytila jää käyttämättä.Jos haluat saada levytilan jälleen käyttöön, voit päivittää Server Pro -versioon 3.5.13 (jos käytät vielä 3.x-julkaisua) tai Server Pro -versioon 4.2.5 (jos käytät 4.x-julkaisua) ja suorittaa siivousskriptin uudelleen.3.5.x:n uusimpien korjausjulkaisujen ja uusimman 4.x.x:n Server Prohon sisältyvä siivousskripti poistaa kokoelmat viimeisenä vaiheenaan.Siivousskriptin voi turvallisesti suorittaa uudelleen.

Vianmääritys

Lisäämme vianmääritysohjeita tähän. Huomaa, että vaikka tarjoamme tukea tavallisesti vain Server Pro -asiakkaille, tämän siirron luonteen vuoksi pyrimme parhaamme mukaan tukemaan myös CE-asiakkaita, jotka kohtaavat nimenomaan koko projektihistorian siirtoon liittyviä ongelmia. Jos koko projektihistorian siirtoskripti epäonnistuu (eli päättyy virheeseen tai ilmoittaa epäonnistuneiden projektien määräksi muun kuin nollan), lähetä seuraavat tiedot tukitiimillemme sähköpostitse osoitteeseen support+historymigration@overleaf.com ja kerro seuraavat asiat: Aihe: Full project history migration problem
  • Instanssin tyyppi: CE tai Server Pro (poista tarpeeton)
  • Asennustyyppi: Overleaf toolkit, docker-compose.yml tai muu (poista tarpeeton)
  • Versio: 3.5.x (toolkit: $ cat config/version)
  • Siirtoskriptin tuloste (jonka pitäisi sijaita kontissa hakemistossa /overleaf/services/web)
  • Siirretyt projektit: (siirtoskriptin tulosteen mukaan)
  • Projekteja yhteensä: (siirtoskriptin tulosteen mukaan)
  • Jäljellä olevat projektit: (siirtoskriptin tulosteen mukaan)
  • Siirron kesto:
  • bin/doctor-komennon tuloste (Toolkitia käytettäessä)
  • Toolkitin versio: $ git rev-parse HEAD (Toolkitia käytettäessä)
Harkitse palveluiden history-v1, project-history ja track-changes lokitiedostojen liittämistä sähköpostiin. Löydät ne sharelatex-kontin sisältä hakemistosta /var/log/sharelatex, ja voit viedä ne näin:
Poista lokitiedostoista kaikki arkaluonteiset tiedot ennen niiden liittämistä.

Rikkinäisten tiedostopuiden etsiminen

Siirto voi epäonnistua projekteissa, joiden tiedostopuu on virheellinen (esimerkiksi jos tiedostonimet ovat tyhjiä). Voit saada luettelon näistä ongelmista find_malformed_filetrees-skriptillä, joka tarkistaa kaikki tietokannan projektit:
Korjaa virheelliset polut fix_malformed_filetree-skriptillä suorittamalla komento kerran kutakin virheellistä polkua kohden:

Projektien palauttaminen koko projektihistoriasta vanhaan historiaan

Jos jokin projekti on siirretty koko projektihistoriaan, mutta haluat palata vanhaan historiaan, käytä downgrade_project-skriptiä seuraavasti:
Viimeksi muokattu 4. lokakuuta 2026