> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Kehitysohjeet

> overleaf-pro-projektin osallistumisohjeet, jotka kattavat repositorioiden synkronoinnin rajoitukset, haarakäytännöt sekä yleisiä kysymyksiä upstreamista ja versioinnista.

### Johdanto

Ennen kuin syvennyt kehitykseen, toivomme, että ymmärrät seuraavat asiat:

* Overleafia kehitetään virallisesti [sisäisessä repositoriossa](http://github.com/overleaf/internal), ja yhteisöversio julkaistaan repositoriossa [overleaf/overleaf](https://github.com/overleaf/overleaf). Copybot huolehtii koodin synkronoinnista sisäisen ja julkisen repositorion välillä.
* [Ayaka-notes/overleaf-pro](https://github.com/ayaka-notes/overleaf-pro) on Overleafin yhteisöversiosta haarautettu versio. Toivomme, että projekti on pitkäikäinen, joten noudata sääntöjä ennen kuin osallistut kehitykseen.

### Commit-säännöt

* Älä tee laajoja muutoksia olemassa olevaan Overleaf-koodiin. Keskitä mahdollisimman paljon toiminnallisuutta kansioon `services/web/modules`. Tämä minimoi työmäärämme, kun koodia myöhemmin yhdistetään ja päivitetään.
* Vibe coding on toki hyvin helppo tapa, mutta se voi helposti sotkea projektimme ja tehdä siitä myöhemmin vaikeasti ylläpidettävän, joten käytä sitä varoen.
* Älä lisää kehityksen aikana käännöksiin liittyvää sisältöä; käytä olemassa olevia käännöksiä aina kun mahdollista.
* Vältä uusien ympäristömuuttujien lisäämistä, ellei se ole ehdottoman välttämätöntä. Jos niitä tarvitaan, varmista, että ne ovat mahdollisimman yhdenmukaisia Overleaf Toolkitin tai [docs.overleaf.com](https://docs.overleaf.com/)-sivuston muuttujien kanssa.

### Haarasäännöt

Käytämme overleaf-pro-kehityksessä seuraavia haaroja:

* `main`: Tätä haaraa käytetään vain upstream-koodin synkronointiin, joten **ÄLÄ** tee siihen mitään ulkopuolisia muutoksia. Tähän haaraan asetamme tageja, kuten `ce-v[X.x.x]`, jotka osoittavat, että kyseinen kohta vastaa Overleafin virallisen yhteisöversion versiota `v[X.x.x]`. Huomio: tämä tagi on muuttumaton!
* `server-pro`: Tämä haara on päivittäisen kehityksen oletushaara.
* `feature-X`: Tätä haaraa käytetään tietyn ominaisuuden kehittämiseen.
* `release-vX.0.0`: Julkaisua varten tarkoitettu haara, johon teemme tarvittaessa pikakorjauksia ennen julkaisua.

<Frame caption="Overleaf Pron haarasäännöt">
  <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/dev/release-model.png?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=8a10a259ff5a6437cb05f03560a5dc2c" alt="" width="5652" height="2544" data-path="images/dev/release-model.png" />
</Frame>

### GitHub Action

[GitHub Action](https://github.com/ayaka-notes/overleaf-pro/actions) vastaa automaattisesta CI/CD:stä, johon kuuluu:

* main-haaran päivitys joka yö
* Docker-imagen koostaminen kehitystä varten
* Docker-imagen julkaisu

### Kysymyksiä ja vastauksia

<Accordion title="Miten löydän Overleaf Community Editionin version `X.0.0` commit-tunnisteen?">
  Ensin sinun on haettava Docker-image ja suoritettava seuraava komento, jolla voit tarkastella imagen labeleita:

  ```shellscript title="bash" wrap theme={null}
  docker inspect --format='{{json .Config.Labels}}' sharelatex/sharelatex:6.0.0
  {"com.overleaf.ce.revision":"b0d05c0cf0750714e1f467d20ed6c5f5e9467e8f","org.opencontainers.image.ref.name":"ubuntu","org.opencontainers.image.version":"24.04"}
  ```

  Sen jälkeen voit tarkistaa, löytyykö [commit (b0d05c0)](https://github.com/overleaf/overleaf/commit/b0d05c0cf0750714e1f467d20ed6c5f5e9467e8f) upstreamin master-haarasta.
</Accordion>

<Accordion title="Miksi CE-imagen commit-tunniste on sama versioissa `6.0.0` ja `6.0.1`?">
  Tämä on odotettu toiminta. Versio 6.0.1 on pieni korjausjulkaisu, joka on rakennettu 6.0.0-imagen päälle. Muutokset on tehty paikkaamalla olemassa olevaa 6.0.0-imagea sen sijaan, että image olisi koostettu uudelleen uudesta commitista. Siksi imagen sisällä oleva commit-tunniste on sama versioissa 6.0.0 ja 6.0.1.

  Lisätietoja on kohdassa [hotfix](https://github.com/overleaf/overleaf/tree/main/server-ce/hotfix).
</Accordion>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.