Verziókezelő integráció¶
Weblate currently supports Git (with extended support for GitHub módosítási kérelmek (pull request), GitLab egyesítési kérelmek (merge request), Gitea módosítási kérelmek (pull request), Gerrit review requests, Subversion, Bitbucket Cloud módosítási kérelmek (pull request), Bitbucket Data Center módosítási kérelmek (pull request), and Azure DevOps egyesítési kérelmek (pull request)) and Mercurial as version control back-ends.
For provider-specific setup steps that combine repository access, incoming notifications, and pushing translations back, see Code hosting integrations.
Tárolók elérése¶
A használni kívánt VCS-tárolónak elérhetőnek kell lennie a Weblate számára. Nyilvános tároló esetén elegendő a megfelelő URL megadása (például: https://github.com/WeblateOrg/weblate.git), de privát tárolók vagy feltöltési URL-ek esetén a beállítás összetettebb, és hitelesítést igényel.
Tárolók elérése a Hosted Weblate szolgáltatásból¶
Megjegyzés
This section applies only to Hosted Weblate (hosted.weblate.org). If you are running your own self-hosted Weblate instance, please see the next section instead.
A Hosted Weblate számára dedikált feltöltési felhasználó van regisztrálva a GitHub, Bitbucket, Codeberg és GitLab felületeken (felhasználónév: weblate, e-mail cím: hosted@weblate.org, név vagy profil leírás: Weblate push user).
Tipp
Több Weblate-felhasználó is előfordulhat ezeken a platformokon, amelyek más Weblate-példányokhoz tartoznak. Ajánlott a hosted@weblate.org e-mail cím alapján keresni a Hosted Weblate helyes felhasználójának megtalálásához.
A felhasználót hozzá kell adnia a tárolóhoz, mint együttműködőt, és a megfelelő jogosultságokat is biztosítani kell számára (a klónozáshoz elég az olvasási jog, a feltöltéshez írási jog szükséges). A szolgáltatótól és a szervezet beállításaitól függően ez azonnal megtörténik vagy a Weblate oldalon visszaigazolás szükséges.
On GitHub, you need to add or invite the Hosted Weblate weblate user with write access even when you use the Hosted Weblate GitHub app. The app handles incoming notifications from GitHub, but pushing changes back still uses the Hosted Weblate weblate user.
A GitHubon a weblate felhasználó automatikusan elfogadja a meghívást öt percen belül. Más szolgáltatások esetén manuális feldolgozásra lehet szükséges, ezért kérjük, legyen türelmes.
Miután a weblate felhasználót hozzáadta a tárolóhoz, konfigurálhatja az Forráskód tároló és Tároló feltöltési URL beállításokat SSH-protokoll használatával (például: git@github.com:WeblateOrg/weblate.git).
Tárolók elérése kódtároló szolgáltatásokon (GitHub, GitLab, Bitbucket, Azure DevOps, …)¶
Megjegyzés
This section applies to self-hosted Weblate instances. If you are using Hosted Weblate (hosted.weblate.org), see Tárolók elérése a Hosted Weblate szolgáltatásból instead.
For self-hosted Weblate, accessing repositories on code hosting sites is typically done by creating a dedicated user who is associated with a Weblate SSH key (see Weblate SSH-kulcs). This way you associate Weblate SSH key with a single user (platforms frequently enforce single use of an SSH key) and grant this user access to the repository. You can then use SSH URL to access the repository (see SSH-tárolók).
SSH-tárolók¶
A privát tárolók elérésének leggyakoribb módja az SSH-alapú hozzáférés. Ilyenkor a Weblate nyilvános SSH-kulcsát kell engedélyezni (lásd: Weblate SSH-kulcs) a forrástárolóhoz való hozzáféréshez.
Figyelem
On GitHub, each key can only be used once, see GitHub repository access and Tárolók elérése a Hosted Weblate szolgáltatásból.
A Weblate az első csatlakozáskor elmenti a kiszolgáló kulcsának ujjlenyomatát, és a kapcsolat meghiúsul, ha az később megváltozik (lásd: SSH kiszolgálókulcsok ellenőrzése).
Ha módosítás szükséges, azt a Weblate adminisztrációs felületéről lehet elvégezni:
Weblate SSH-kulcs¶
A 4.17 verzióban változott: A Weblate mostantól RSA és Ed25519 típusú SSH-kulcsokat is generál. Új telepítés esetén az Ed25519 használata javasolt.
A Weblate nyilvános kulcsa minden felhasználó számára látható a Névjegy oldalon.
A rendszergazdák az adminisztrációs felület kezdőoldalán, az SSH kulcsok menüpontból generálhatják vagy megtekinthetik a Weblate által jelenleg használt nyilvános kulcsot.
Megjegyzés
A hozzátartozó privát SSH-kulcs jelenleg nem lehet jelszóval védett, ezért gondoskodjon megfelelő biztonságról.
Tipp
Készítsen biztonsági mentést a generált Weblate privát SSH-kulcsról.
SSH kiszolgálókulcsok ellenőrzése¶
A Weblate az első eléréskor automatikusan elmenti az SSH kiszolgálókulcsot és később is ezeket használja.
Ha előre ellenőrizni szeretné a kulcs ujjlenyomatát, a hozzáférni kívánt szerver SSH-kulcsait adja hozzá az adminfelületen található Kiszolgálókulcs hozzáadása menüpontban. Adja meg a hozzáférendő kiszolgáló nevét (pl. gitlab.com), majd kattintson a Küldés gombra. Ellenőrizze, hogy az ujjlenyomat egyezik-e a szerverével.
A hozzáadott kulcsok és ujjlenyomataik a visszaigazoló üzenetben jelennek meg:
Kapcsolódás régi SSH-kiszolgálókhoz¶
Az OpenSSH legutóbbi kiadásai (például a Weblate Docker-konténerben használt verzió) alapértelmezetten letiltják az RSA-aláírásokat, amelyek a SHA-1 kivonatoló algoritmust használják. Erre a módosításra azért került sor, mert a SHA-1 algoritmus kriptográfiailag nem biztonságos: már lehetséges előre meghatározott előtaggal rendelkező kivonatütközéseket létrehozni, körülbelül 50 000 USD költséggel.
A legtöbb felhasználó számára ez a változás nem lesz észrevehető, és nincs szükség az ssh-rsa kulcsok cseréjére. Az OpenSSH a 7.2-es kiadástól kezdve támogatja az RFC8332 szerinti RSA/SHA-256/512 aláírásokat, így az ssh-rsa kulcsok automatikusan az erősebb algoritmust használják, ha lehetséges.
Kompatibilitási probléma akkor léphet fel, ha elavult SSH-implementációhoz csatlakozik, amely nem lett frissítve vagy nem követi szorosan a protokoll fejlődését. Az ilyen szerverhez való SSH-kapcsolat hibával megszakad:
no matching host key type found. Their offer: ssh-rsa
Ilyen esetekben szükség lehet az RSA/SHA1 támogatásának szelektív visszaengedélyezésére, hogy a kapcsolatfelvétel és/vagy a felhasználó hitelesítése lehetővé váljon a HostkeyAlgorithms és PubkeyAcceptedAlgorithms beállítások segítségével. Például az alábbi bejegyzés a DATA_DIR/ssh/config fájlban engedélyezi az RSA/SHA1 használatát kiszolgáló- és felhasználói hitelesítéshez egyetlen célállomás esetében:
Host legacy-host
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
Javasoljuk, hogy az RSA/SHA1 engedélyezése csak átmeneti megoldás legyen, amíg a régi rendszerek frissítése vagy más kulcstípusra (pl. ECDSA vagy Ed25519) való áttérés meg nem történik.
GitHub tárolók¶
Detailed GitHub repository access is covered in GitHub repository access.
GitLab repositories¶
Detailed GitLab repository access is covered in GitLab repository access.
Weblate belső URL-ek¶
Egy tárolóbeállítás megosztható több összetevő között is, ha annak helyét weblate://projekt/összetevő formában adja meg a hivatkozott (összekapcsolt) összetevőkben. Így ezek az összetevők a hivatkozott főösszetevő VCS-beállításait használják.
Figyelem
A főösszetevő törlése esetén a hivatkozott összetevők is törlésre kerülnek.
A Weblate automatikusan beállítja a tároló URL-jét, ha összetevő létrehozásakor talál egy másik, azonos tárolóra beállított összetevőt. Ez a beállítás felülírható az összetevő konfigurációjának utolsó lépésében.
Ennek előnyei:
Tárhelyet takarít meg a szerveren, mivel a tároló csak egyszer kerül mentésre.
Gyorsabb frissítések, mivel csak egy tárolót kell frissíteni.
Csak egyetlen exportált tároló van a Weblate-fordításokkal (lásd: Git exportáló).
Bizonyos kiegészítők több összetevőn is működnek, ha ugyanazt a tárolót használják – például: Git véglegesítések összevonása.
HTTPS tárolók¶
Védett HTTPS-tárolókhoz való hozzáféréshez adja meg a felhasználónevet és jelszót az URL-ben. Nem kell aggódni, a Weblate eltávolítja ezeket az adatokat a megjelenített URL-ből (ha a felhasználó egyáltalán láthatja azt).
Például egy GitHub URL hitelesítéssel így nézhet ki: https://user:your_access_token@github.com/WeblateOrg/weblate.git.
In case you don’t provide credentials in the URL and the repository requires it, Git will fail with an error:
fatal: could not read Username for 'https://github.com': terminal prompts disabled
A 5.10.2 verzióban változott: A Weblate proaktív hitelesítést alkalmaz a Git 2.46.0 és újabb verziókkal, ha HTTP-hitelesítési adatok vannak megadva.
Ez lehetővé teszi például az Azure DevOps tárolók elérését, illetve gyorsabbá teszi a hitelesített tárolókhoz való hozzáférést.
Megjegyzés
Ha a felhasználónév vagy jelszó speciális karaktereket tartalmaz, azokat URL-kódolni kell, például: https://user%40example.com:%24password%23@bitbucket.org/….
Proxy használata¶
Ha HTTP/HTTPS VCS-tárolókhoz proxyn keresztül kell csatlakozni, állítsa be a VCS-t ennek megfelelően.
Ez történhet a http_proxy, https_proxy és all_proxy környezeti változók használatával (lásd a cURL dokumentációt) vagy közvetlenül a VCS konfigurációban, például így:
git config --global http.proxy http://user:password@proxy.example.com:80
Megjegyzés
A proxy beállítást annak a felhasználónak a környezetében kell elvégezni, aki a Weblate-et futtatja (lásd: Fájlrendszer jogosultságok), továbbá a HOME=$DATA_DIR/home beállítással (lásd: DATA_DIR), különben a Weblate által meghívott Git nem fogja használni a beállítást.
Lásd még
Git¶
Tipp
A Weblate a Git 2.28-as vagy újabb verzióját igényli.
Lásd még
Különféle tárolók eléréséhez lásd: Tárolók elérése.
Git kényszerített feltöltéssel¶
Ez ugyanúgy működik, mint a normál Git, azzal a különbséggel, hogy mindig kényszerített feltöltést hajt végre. Ez csak akkor javasolt, ha a fordítások külön tárolóban vannak.
Figyelem
Óvatosan használja, mivel könnyen adatvesztéshez vezethet a forrástárolóban.
Git beállításainak testreszabása¶
A Weblate minden VCS-parancsot HOME=$DATA_DIR/home környezettel hajt végre (lásd: DATA_DIR), ezért a felhasználói konfigurációt a DATA_DIR/home/.git könyvtárban kell szerkeszteni.
GitHub módosítási kérelmek (pull request)¶
Detailed GitHub pull request setup is covered in GitHub módosítási kérelmek (pull request).
GitLab egyesítési kérelmek (merge request)¶
Detailed GitLab merge request setup is covered in GitLab egyesítési kérelmek (merge request).
Gitea módosítási kérelmek (pull request)¶
Detailed Gitea pull request setup is covered in Gitea módosítási kérelmek (pull request).
Bitbucket Data Center módosítási kérelmek (pull request)¶
Detailed Bitbucket Data Center pull request setup is covered in Bitbucket Data Center módosítási kérelmek (pull request).
Bitbucket Cloud módosítási kérelmek (pull request)¶
Detailed Bitbucket Cloud pull request setup is covered in Bitbucket Cloud módosítási kérelmek (pull request).
Pagure egyesítési kérelmek (merge request)¶
Detailed Pagure merge request setup is covered in Pagure egyesítési kérelmek (merge request).
Gerrit¶
Detailed Gerrit review request setup is covered in Gerrit review requests.
Azure DevOps egyesítési kérelmek (pull request)¶
Detailed Azure DevOps pull request setup is covered in Azure DevOps egyesítési kérelmek (pull request).
Mercurial¶
A Mercurial egy másik verziókezelő rendszer, amelyet közvetlenül lehet használni a Weblate-ben.
Megjegyzés
Általában bármilyen Mercurial-verzióval működik, de időnként előfordulhatnak inkompatibilis változások a parancssori felületen, amelyek megszakíthatják az integrációt.
Lásd még
Különféle tárolók eléréséhez lásd: Tárolók elérése.
Subversion¶
A Weblate a git-svn eszközt használja subversion tárolók kezeléséhez. Ez egy Perl script, amely lehetővé teszi, hogy a Subversion rendszerrel Git kliensen keresztül dolgozzon, így a felhasználók teljes másolatot tarthatnak fenn a belső tárolóról, és helyben véglegesíthetnek.
Megjegyzés
A Weblate megpróbálja automatikusan felismerni a Subversion tároló szerkezetét – támogatja az ágakra mutató közvetlen URL-eket, valamint a szabványos szerkezetű tárolókat (branches/, tags/ és trunk/). Erről további információ a git-svn dokumentációban található. Ha a tároló nem szabványos szerkezetű és hibát tapasztal, próbálja meg az ág nevét is megadni az URL-ben, ilyenkor a Weblate-n hagyja üresen az ág mezőt.
Subversion hitelesítő adatok¶
A Weblate elvárja, hogy a tanúsítványt előzetesen elfogadja (és szükség esetén a hitelesítő adatokat is). Ezeket a DATA_DIR könyvtárba próbálja menteni. A tanúsítvány elfogadásához egyszer futtassa az svn parancsot úgy, hogy a $HOME környezeti változót a DATA_DIR értékére állítja:
# Use DATA_DIR as configured in Weblate settings.py, it is /app/data in the Docker
HOME=${DATA_DIR}/home svn co https://svn.example.com/example
Lásd még
Helyi fájlok¶
Tipp
A háttérben ez is a Git használatán alapul. Git telepítése szükséges, és lehetőséget ad arra, hogy natívan Git-et használjon a fordítások teljes előzményével.
A Weblate akkor is működik, ha nincs távoli VCS. Az első fordításokat feltöltéssel lehet importálni. Később az egyes fájlokat cserélheti fájlfeltöltéssel vagy közvetlenül is hozzáadhat fordítási szövegeket a Weblate felületén (jelenleg csak egynyelvű fordítások esetén).
A háttérben a Weblate létrehoz egy Git-tárolót, amelyben minden változás nyomon követhető. Ha később verziókezelő rendszert kíván használni a fordításokhoz, már rendelkezik egy tárolóval, amelyre az integrációt alapozhatja.