ການເຊື່ອມຕໍ່ກັບລະບົບຄວບຄຸມເວີຊັນ

ປະຈຸບັນ Weblate ຮອງຮັບ Git (ພ້ອມການຮອງຮັບເພີ່ມເຕີມສຳລັບ GitHub Pull request, GitLab Merge request, Gitea Pull request, ຄຳຮ້ອງຂໍການກວດສອບ Gerrit, Subversion, Bitbucket Cloud Pull request, Bitbucket Data Center Pull request, ແລະ Azure DevOps Pull request) ແລະ Mercurial ເປັນລະບົບຫຼັງບ້ານໃນການຄວບຄຸມເວີຊັນ.

ສຳລັບຂັ້ນຕອນການຕັ້ງຄ່າສະເພາະຂອງແຕ່ລະຜູ້ໃຫ້ບໍລິການ, ເບິ່ງ ການເຊື່ອມຕໍ່ກັບບໍລິການຝາກໂຄ້ດ.

ການເຂົ້າເຖິງຄັງເກັບ (repositories)

ຄັງເກັບ VCS ທີ່ເຈົ້າຕ້ອງການໃຊ້ຕ້ອງສາມາດເຂົ້າເຖິງໄດ້ໂດຍ Weblate. ສຳລັບຄັງເກັບທີ່ເປັນສາທາລະນະ ເຈົ້າພຽງແຕ່ໃສ່ URL ທີ່ຖືກຕ້ອງ (ຕົວຢ່າງ: https://github.com/WeblateOrg/weblate.git), ແຕ່ສຳລັບຄັງເກັບສ່ວນຕົວ ຫຼື URL ສຳລັບການພຸຊ (push), ການຕັ້ງຄ່າຈະມີຄວາມຊັບຊ້ອນກວ່າ ແລະ ຕ້ອງມີການຢືນຢັນຕົວຕົນ.

Troubleshooting repository URLs

Weblate ຈະກວດສອບ URL ຂອງຄັງເກັບ ແລະ URL ສຳລັບການຍູ້ຂໍ້ມູນກ່ອນທີ່ຈະເຊື່ອມຕໍ່. HTTPS ແລະ SSH ໄດ້ຮັບອະນຸຍາດໂດຍເລີ່ມຕົ້ນ; ຜູ້ບໍລິຫານລະບົບສາມາດປັບປ່ຽນສິ່ງນີ້ໄດ້ ໂດຍໃຊ້ VCS_ALLOW_SCHEMES.

ຊື່ໂຮສຂອງຄັງເກັບຕ້ອງສາມາດຄົ້ນຫາທີ່ຢູ່ໄດ້ຈາກເຊີບເວີ Weblate. ເມື່ອເປີດໃຊ້ VCS_RESTRICT_PRIVATE, Weblate ຍັງຈະປະຕິເສດປາຍທາງທີ່ຊີ້ໄປຫາທີ່ຢູ່ພາຍໃນ ຫຼື ທີ່ຢູ່ທີ່ບໍ່ແມ່ນສາທາລະນະ. ໃຫ້ໃຊ້ URL ຂອງຄັງເກັບທີ່ສາມາດເຂົ້າເຖິງໄດ້ຈາກສາທາລະນະຫາກເປັນໄປໄດ້. ສຳລັບຄັງເກັບສ່ວນຕົວໃນເຄືອຂ່າຍທີ່ໜ້າເຊື່ອຖື, ໃຫ້ແຈ້ງຜູ້ບໍລິຫານລະບົບເພື່ອເພີ່ມຊື່ໂຮສ ເຂົ້າໃນ VCS_ALLOW_HOSTS.

Git ຜ່ານ HTTPS ແລະ SSH ສາມາດຜູກມັດການເຊື່ອມຕໍ່ກັບທີ່ຢູ່ທີ່ໄດ້ຮັບອະນຸຍາດໃນລະຫວ່າງການກວດສອບ. ສ່ວນ Backends ທີ່ບໍ່ສາມາດເຮັດສິ່ງນີ້ໄດ້ຢ່າງປອດໄພ, ລວມທັງ Mercurial ແລະ Subversion, ຈຳເປັນຕ້ອງມີຊື່ໂຮສຂອງຄັງເກັບທີ່ໜ້າເຊື່ອຖືໃນ VCS_ALLOW_HOSTS ໃນຂະນະທີ່ການຈຳກັດທີ່ຢູ່ສ່ວນຕົວຖືກເປີດໃຊ້ງານ.

ຕັ້ງຄ່າ URL ຂອງຄັງເກັບປາຍທາງໂດຍກົງຫາກເປັນໄປໄດ້. Weblate ສາມາດຍອມຮັບການປ່ຽນທິດທາງ HTTP ແບບຖາວອນ (permanent redirect) ໄດ້ໂດຍອັດຕະໂນມັດ ກໍຕໍ່ເມື່ອມັນຍັງຢູ່ເທິງໂຮສເດີມ ແລະ ປາຍທາງໄດ້ຮັບການກວດສອບສຳເລັດແລ້ວເທົ່ານັ້ນ. ການປ່ຽນທິດທາງໄປຫາໂຮສ ຫຼື ໂປຣໂຕຄໍອື່ນ ຕ້ອງໄດ້ຮັບການຕັ້ງຄ່າດ້ວຍຕົນເອງ.

ການເຂົ້າເຖິງຄັງເກັບຈາກ Hosted Weblate

Note

ສ່ວນນີ້ໃຊ້ ສະເພາະ ກັບ Hosted Weblate (hosted.weblate.org). ຫາກເຈົ້າລັນ Weblate ດ້ວຍຕົນເອງ (self-hosted), ກະລຸນາເບິ່ງ ສ່ວນຖັດໄປ ແທນ.

ສຳລັບຄັງເກັບ GitHub ໃນ Hosted Weblate, ໃຫ້ໃຊ້ Hosted Weblate app ຈາກຂັ້ນຕອນ ເຊື່ອມຕໍ່ບັນຊີ GitHub ຂອງ Weblate ເມື່ອເປັນໄປໄດ້. App ຈະໃຫ້ສິດ ໃນການເຂົ້າເຖິງຄັງເກັບ, ຮັບການແຈ້ງເຕືອນຂາເຂົ້າ, ພຸຊບຣານການແປ, ແລະ ສ້າງ pull requests ໂດຍບໍ່ຕ້ອງເຊີນຜູ້ໃຊ້ weblate ຂອງ Hosted Weblate. ເບິ່ງ ການເຂົ້າເຖິງຣີໂພຊິທໍຣີ GitHub ສຳລັບການຕັ້ງຄ່າທັງໝົດ.

ສຳລັບການເຂົ້າເຖິງ SSH ໂດຍກົງຢູ່ນອກຂັ້ນຕອນຂອງ GitHub App, ແລະ ສຳລັບຄັງເກັບຂອງ Bitbucket, Codeberg, ແລະ GitLab, Hosted Weblate ຈະມີຜູ້ໃຊ້ສະເພາະສຳລັບການພຸຊ (ດ້ວຍຊື່ຜູ້ໃຊ້ weblate, ອີເມລ hosted@weblate.org, ແລະ ຊື່ ຫຼື ຄຳອະທິບາຍໂປຣໄຟລ໌ Weblate push user).

Hint

ອາດຈະມີຜູ້ໃຊ້ Weblate ຄົນອື່ນໆໃນແພລດຟອມນັ້ນ ເຊິ່ງຖືກກຳນົດໄວ້ສຳລັບ Weblate ເຄື່ອງອື່ນ. ແນະນຳໃຫ້ຄົ້ນຫາດ້ວຍອີເມລ hosted@weblate.org ເພື່ອຫາຜູ້ໃຊ້ທີ່ຖືກຕ້ອງສຳລັບ Hosted Weblate.

ທ່ານຈຳເປັນຕ້ອງເພີ່ມຜູ້ໃຊ້ນີ້ເປັນຜູ້ຮ່ວມງານ.

ຜູ້ໃຊ້ weblate ໃນ GitHub ຈະຍອມຮັບຄຳເຊີນໂດຍອັດຕະໂນມັດພາຍໃນຫ້ານາທີ.

ສຳລັບການຕັ້ງຄ່າຜູ້ໃຊ້ SSH ໂດຍກົງນີ້, ເມື່ອເພີ່ມຜູ້ໃຊ້ weblate ເຂົ້າໃນຄັງເກັບຂອງທ່ານແລ້ວ, ທ່ານສາມາດຕັ້ງຄ່າ ຄັງເກັບຊອດໂຄ້ດ ແລະ URL ສຳລັບ push ຄັງເກັບ ໂດຍໃຊ້ໂປຣໂຕຄໍ SSH ໄດ້, ຕົວຢ່າງ: git@example.com:group/project.git.

ການເຂົ້າເຖິງຄັງເກັບໂຄ້ດໃນເວັບໄຊຝາກໂຄ້ດ (GitHub, GitLab, Bitbucket, Azure DevOps, ...)

Note

ສ່ວນນີ້ໃຊ້ກັບ Weblate ແບບ ຕິດຕັ້ງເອງ (self-hosted). ຫາກທ່ານໃຊ້ Hosted Weblate (hosted.weblate.org), ໃຫ້ເບິ່ງ ການເຂົ້າເຖິງຄັງເກັບຈາກ Hosted Weblate ແທນ.

ສຳລັບ Weblate ແບບຕິດຕັ້ງເອງ, ຄັງເກັບສ່ວນຕົວພຽງອັນດຽວມັກຈະຕັ້ງຄ່າງ່າຍທີ່ສຸດໂດຍໃຊ້ URL ຂອງຄັງເກັບແບບ HTTPS ພ້ອມກັບ access token, ເບິ່ງ ການເຊື່ອມຕໍ່ກັບບໍລິການຝາກໂຄ້ດ.

ສຳລັບຄັງເກັບຫຼາຍອັນ, ໃຫ້ສ້າງຜູ້ໃຊ້ໃນເວັບຝາກໂຄ້ດສະເພາະ ທີ່ເຊື່ອມໂຍງກັບຄີ SSH ຂອງ Weblate (ເບິ່ງ ຄີ SSH ຂອງ Weblate). ວິທີນີ້ເຈົ້າຈະເຊື່ອມໂຍງຄີ SSH ຂອງ Weblate ກັບຜູ້ໃຊ້ຄົນດຽວ, ເນື່ອງຈາກແພລດຟອມຕ່າງໆມັກຈະບັງຄັບໃຫ້ໃຊ້ຄີ SSH ໄດ້ພຽງຄັ້ງດຽວ. ໃຫ້ສິດຜູ້ໃຊ້ນີ້ໃນການເຂົ້າເຖິງຄັງເກັບ, ແລະ ໃຊ້ SSH URLs ເພື່ອເຂົ້າເຖິງພວກມັນ (ເບິ່ງ ຄັງເກັບ SSH).

ຄັງເກັບ SSH

ວິທີການທົ່ວໄປໜຶ່ງໃນການເຂົ້າເຖິງຄັງເກັບສ່ວນຕົວແມ່ນຜ່ານ SSH. ໃຫ້ອະນຸຍາດຄີ SSH ສາທາລະນະ ຂອງ Weblate (ເບິ່ງ ຄີ SSH ຂອງ Weblate) ເພື່ອເຂົ້າເຖິງຄັງເກັບຕົ້ນທາງດ້ວຍວິທີນີ້.

Warning

ໃນ GitHub, ແຕ່ລະຄີສາມາດໃຊ້ໄດ້ພຽງຄັ້ງດຽວເທົ່ານັ້ນ, ເບິ່ງ ການເຂົ້າເຖິງຣີໂພຊິທໍຣີ GitHub ແລະ ການເຂົ້າເຖິງຄັງເກັບຈາກ Hosted Weblate.

Weblate ຍັງເກັບລາຍນິ້ວມື (fingerprint) ຂອງຄີໂຮສໄວ້ເມື່ອມີການເຊື່ອມຕໍ່ຄັ້ງທຳອິດ, ແລະ ຈະເຊື່ອມຕໍ່ກັບໂຮສບໍ່ໄດ້ ຫາກຄີນັ້ນຖືກປ່ຽນແປງໃນພາຍຫຼັງ (ເບິ່ງ ການກວດສອບໂຮສຄີ SSH).

ຫາກຕ້ອງການປັບແຕ່ງ, ໃຫ້ເຮັດໄດ້ຈາກສ່ວນຕິດຕໍ່ຜູ້ເບິ່ງແຍງລະບົບຂອງ Weblate:

_images/ssh-keys.webp

ຄີ SSH ຂອງ Weblate

Changed in version 4.17: ຕອນນີ້ Weblate ສ້າງທັງຄີ SSH ແບບ RSA ແລະ Ed25519. ແນະນຳໃຫ້ໃຊ້ Ed25519 ສຳລັບການຕັ້ງຄ່າໃໝ່.

ພັບລິກຄີ (public key) ຂອງ Weblate ແມ່ນໃຫ້ທຸກຄົນເຫັນໄດ້ໃນໜ້າ ກ່ຽວກັບ.

ຜູ້ດູແລລະບົບສາມາດສ້າງ ຫຼື ສະແດງຄີສາທາລະນະທີ່ Weblate ກຳລັງໃຊ້ໃນການເຊື່ອມຕໍ່ (ຈາກ ຄີ SSH) ໃນໜ້າຫຼັກຂອງສ່ວນຕິດຕໍ່ຜູ້ດູແລລະບົບ.

Note

ໄພຣເວດຄີ (private SSH key) ທີ່ກ່ຽວຂ້ອງກັນນັ້ນ ໃນປະຈຸບັນບໍ່ສາມາດມີລະຫັດຜ່ານໄດ້, ດັ່ງນັ້ນ ໃຫ້ແນ່ໃຈວ່າມັນຖືກປ້ອງກັນໄວ້ເປັນຢ່າງດີ.

Hint

ໃຫ້ສຳຮອງຂໍ້ມູນໄພຣເວດຄີ SSH ຂອງ Weblate ທີ່ສ້າງຂຶ້ນໄວ້.

ການກວດສອບໂຮສຄີ SSH

Weblate ຈະບັນທຶກໂຮສຄີ SSH ໂດຍອັດຕະໂນມັດໃນການເຂົ້າເຖິງຄັ້ງທຳອິດ ແລະ ຈື່ພວກມັນໄວ້ເພື່ອໃຊ້ໃນຄັ້ງຕໍ່ໄປ.

ເມື່ອເປີດໃຊ້ VCS_RESTRICT_PRIVATE, Weblate ຈະແປງຊື່ ແລະ ກວດສອບໂຮສຂອງຄັງເກັບ ກ່ອນທີ່ຈະສະແກນຄີຂອງມັນ ແລະ ຈະເຊື່ອມຕໍ່ ssh-keyscan ສະເພາະກັບທີ່ຢູ່ທີ່ໄດ້ຮັບການອະນຸມັດເທົ່ານັ້ນ. ຄີທີ່ເກັບໄວ້ຈະຍັງຄົງເຊື່ອມໂຍງກັບຊື່ໂຮສເດີມ.

ສຳລັບການເຊື່ອມຕໍ່ Git, Weblate ຍັງນຳໃຊ້ HostName ແລະ Port ຈາກ DATA_DIR/ssh/config ກ່ອນທີ່ຈະກວດສອບ ແລະ ປັກໝຸດປາຍທາງທີ່ມີຜົນນຳໃຊ້. ການຕັ້ງຄ່າ SSH ແລະ SSH_EXTRA_ARGS ແມ່ນຂໍ້ມູນຂາເຂົ້າທີ່ຄວບຄຸມໂດຍຜູ້ດູແລລະບົບທີ່ໜ້າເຊື່ອຖື. ພວກມັນສາມາດປ່ຽນແປງເສັ້ນທາງການເຊື່ອມຕໍ່ໄດ້, ແລະ SSH_EXTRA_ARGS ສາມາດຂ້າມການປັກໝຸດທີ່ຢູ່ຂອງ Weblate ໄດ້; ຜູ້ດູແລລະບົບຕ້ອງຮັບຜິດຊອບຕໍ່ຜົນກະທົບຂອງມັນ.

ໃນກໍລະນີທີ່ທ່ານຕ້ອງການກວດສອບລາຍນິ້ວມືຂອງຄີກ່ອນການເຊື່ອມຕໍ່ກັບຄັງເກັບ, ໃຫ້ເພີ່ມຄີໂຮສ SSH ຂອງເຊີເວີທີ່ທ່ານກຳລັງຈະເຂົ້າເຖິງໃນ ເພີ່ມຄີໂຮສ, ຈາກພາກສ່ວນດຽວກັນໃນສ່ວນຕິດຕໍ່ຜູ້ດູແລລະບົບ. ໃສ່ຊື່ໂຮສທີ່ທ່ານຈະເຂົ້າເຖິງ (ຕົວຢ່າງ: gitlab.com), ແລ້ວກົດ ສົ່ງ. ກວດສອບວ່າລາຍນິ້ວມືຂອງມັນກົງກັບເຊີເວີທີ່ທ່ານເພີ່ມຫຼືບໍ່.

ຄີທີ່ເພີ່ມເຂົ້າໄປພ້ອມກັບລາຍນິ້ວມືຈະຖືກສະແດງໃນຂໍ້ຄວາມຢືນຢັນ:

_images/ssh-keys-added.webp

ການເຊື່ອມຕໍ່ກັບເຊີເວີ SSH ແບບເກົ່າ (legacy)

OpenSSH ເວີຊັນຫຼ້າສຸດ ຈະປິດການໃຊ້ງານລາຍເຊັນ RSA ທີ່ໃຊ້ SHA-1 ໂດຍເລີ່ມຕົ້ນ.

ສຳລັບຜູ້ໃຊ້ສ່ວນໃຫຍ່, ການປ່ຽນແປງນີ້ຈະບໍ່ສົ່ງຜົນກະທົບທີ່ເຫັນໄດ້ ແລະ ບໍ່ຈຳເປັນຕ້ອງປ່ຽນຄີ ssh-rsa ໃໝ່. OpenSSH ໄດ້ຮອງຮັບລາຍເຊັນ RFC8332 RSA/SHA-256/512 ຕັ້ງແຕ່ເວີຊັນ 7.2 ເປັນຕົ້ນມາ ແລະ ຄີ ssh-rsa ທີ່ມີຢູ່ແລ້ວຈະໃຊ້ລະບົບອັນກໍຣິທຶມທີ່ແຂງແກ່ນກວ່າໂດຍອັດຕະໂນມັດໃນບ່ອນທີ່ສາມາດເຮັດໄດ້.

ຄວາມບໍ່ເຂົ້າກັນມີໂອກາດເກີດຂຶ້ນໄດ້ຫຼາຍກວ່າ ເມື່ອເຊື່ອມຕໍ່ກັບການຕິດຕັ້ງ SSH ລຸ້ນເກົ່າທີ່ບໍ່ໄດ້ຮັບການອັບເກຣດ ຫຼື ບໍ່ໄດ້ຕິດຕາມການປັບປຸງໃນໂປຣໂຕຄໍ SSH ຢ່າງໃກ້ຊິດ. ການເຊື່ອມຕໍ່ SSH ໄປຍັງເຊີບເວີດັ່ງກ່າວຈະຫຼົ້ມເຫຼວດ້ວຍຂໍ້ຄວາມ:

no matching host key type found. Their offer: ssh-rsa

ສຳລັບກໍລະນີເຫຼົ່ານີ້, ອາດຈຳເປັນຕ້ອງເປີດໃຊ້ RSA/SHA1 ຄືນໃໝ່ເປັນບາງສ່ວນ ເພື່ອອະນຸຍາດໃຫ້ມີການເຊື່ອມຕໍ່ ແລະ/ຫຼື ການຢືນຢັນຕົວຕົນຜູ້ໃຊ້ ຜ່ານຕົວເລືອກ HostkeyAlgorithms ແລະ PubkeyAcceptedAlgorithms. ຕົວຢ່າງ: ຂໍ້ຄວາມຕໍ່ໄປນີ້ໃນ DATA_DIR/ssh/config ຈະເປີດໃຊ້ RSA/SHA1 ສຳລັບການຢືນຢັນຕົວຕົນຂອງໂຮສ ແລະ ຜູ້ໃຊ້ ສຳລັບໂຮສປາຍທາງດຽວ:

Host legacy-host
   HostkeyAlgorithms +ssh-rsa
   PubkeyAcceptedAlgorithms +ssh-rsa

ພວກເຮົາແນະນຳໃຫ້ເປີດໃຊ້ RSA/SHA1 ເປັນພຽງມາດຕະການຊົ່ວຄາວ ຈົນກວ່າລະບົບລຸ້ນເກົ່າຈະໄດ້ຮັບການອັບເກຣດ ຫຼື ຕັ້ງຄ່າໃໝ່ດ້ວຍຄີປະເພດອື່ນ (ເຊັ່ນ ECDSA ຫຼື Ed25519).

ຄັງເກັບ GitHub

ລາຍລະອຽດການເຂົ້າເຖິງຄັງເກັບ GitHub ມີອະທິບາຍໄວ້ໃນ ການເຂົ້າເຖິງຣີໂພຊິທໍຣີ GitHub.

ຄັງເກັບ GitLab

ລາຍລະອຽດການເຂົ້າເຖິງຄັງເກັບ GitLab ມີອະທິບາຍໄວ້ໃນ ການເຂົ້າເຖິງຣີໂພຊິທໍຣີ GitLab.

URL ພາຍໃນຂອງ Weblate

ແບ່ງປັນການຕັ້ງຄ່າຄັງເກັບດຽວກັນລະຫວ່າງສ່ວນປະກອບຕ່າງໆ ໂດຍການອ້າງອີງຕຳແໜ່ງຂອງມັນເປັນ weblate://project/component.

Warning

ການລຶບສ່ວນປະກອບຫຼັກຈະເຮັດໃຫ້ສ່ວນປະກອບທີ່ລິ້ງກັນຢູ່ຖືກລຶບໄປນຳ.

ສ່ວນປະກອບທີ່ເຊື່ອມໂຍງກັນຈະໃຊ້ການ Checkout ຄັງເກັບຮ່ວມກັນທັງໝົດ; ການເຊື່ອມໂຍງ ບໍ່ໄດ້ແຍກພວກມັນອອກເປັນໄຟລ໌ ຫຼື ໂຟນເດີສະເພາະ. ຜູ້ໃຊ້ທີ່ໄດ້ຮັບອະນຸຍາດໃຫ້ບໍລິຫານ ສ່ວນປະກອບທີ່ເຊື່ອມໂຍງ ສາມາດຕັ້ງຄ່າການດຳເນີນການທີ່ມີຜົນຕໍ່ໄຟລ໌ຢູ່ບ່ອນໃດກໍໄດ້ໃນການ Checkout ທີ່ແບ່ງປັນນັ້ນ. ຕົວຢ່າງ: ພວກເຂົາສາມາດປ່ຽນ file masks, ຮູບແບບ, ແລະ ເທັມເພລດ, ຫຼື ຕິດຕັ້ງ ແລະ ຕັ້ງຄ່າສ່ວນເສີມ ທີ່ອ່ານ, ສ້າງ ຫຼື ແກ້ໄຂໄຟລ໌ໃນຄັງເກັບ. Weblate ສາມາດຄອມມິດ ແລະ ຍູ້ການປ່ຽນແປງທີ່ເກີດຂຶ້ນ ໂດຍໃຊ້ການຕັ້ງຄ່າຄັງເກັບຂອງສ່ວນປະກອບຫຼັກ.

ໃຫ້ເຊື່ອມໂຍງສ່ວນປະກອບ ກໍຕໍ່ເມື່ອເຈົ້າຂອງຄັງເກັບໄວ້ວາງໃຈຜູ້ບໍລິຫານຂອງທຸກສ່ວນປະກອບທີ່ເຊື່ອມໂຍງ ດ້ວຍການ Checkout ທີ່ສົມບູນເທົ່ານັ້ນ. ໃຫ້ໃຊ້ຄັງເກັບແຍກຕ່າງຫາກ ເມື່ອສ່ວນປະກອບຕ້ອງການ ການແຍກຂໍ້ມູນໃນລະດັບໄຟລ໌.

Weblate ຈະປັບປ່ຽນ URL ຂອງຄັງເກັບຂໍ້ມູນໂດຍອັດຕະໂນມັດໃນເວລາສ້າງຄອມໂພເນນ (component) ຫາກມັນພົບຄອມໂພເນນທີ່ມີການຕັ້ງຄ່າຄັງເກັບຂໍ້ມູນທີ່ກົງກັນ. ທ່ານສາມາດປ່ຽນແປງຄ່ານີ້ໄດ້ໃນຂັ້ນຕອນສຸດທ້າຍຂອງການຕັ້ງຄ່າຄອມໂພເນນ.

ເຫດຜົນທີ່ຄວນໃຊ້ສິ່ງນີ້:

  • ປະຢັດພື້ນທີ່ດິດໃນເຊີເວີ ເພາະຄັງເກັບຈະຖືກເກັບໄວ້ພຽງຄັ້ງດຽວ.

  • ເຮັດໃຫ້ການອັບເດດໄວຂຶ້ນ ເພາະມີພຽງຄັງເກັບດຽວທີ່ຖືກອັບເດດ.

  • ມີພຽງຄັງເກັບຂໍ້ມູນດຽວທີ່ຖືກສົ່ງອອກພ້ອມກັບການແປຂອງ Weblate (ເບິ່ງ Git exporter).

  • ສ່ວນເສີມບາງອັນສາມາດເຮັດວຽກກັບຫຼາຍອົງປະກອບທີ່ໃຊ້ຄັງເກັບຂໍ້ມູນຮ່ວມກັນ, ຕົວຢ່າງ ຮວມ Git commits.

ຄັງເກັບຂໍ້ມູນ HTTPS

ເພື່ອເຂົ້າເຖິງຄັງເກັບຂໍ້ມູນ HTTPS ທີ່ໄດ້ຮັບການປົກປ້ອງ, ໃຫ້ລວມເອົາຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານໃນ URL. ບໍ່ຕ້ອງເປັນຫ່ວງ, Weblate ຈະຕັດຂໍ້ມູນນີ້ອອກເມື່ອສະແດງ URL ໃຫ້ຜູ້ໃຊ້ເຫັນ (ຖ້າຫາກໄດ້ຮັບອະນຸຍາດໃຫ້ເຫັນ URL ຂອງຄັງເກັບຂໍ້ມູນ).

ຕົວຢ່າງ URL ຂອງ GitHub ທີ່ເພີ່ມການຢືນຢັນຕົວຕົນອາດຈະເປັນຄື: https://user:your_access_token@github.com/WeblateOrg/weblate.git.

ໃນກໍລະນີທີ່ທ່ານບໍ່ໄດ້ໃຫ້ຂໍ້ມູນການຢືນຢັນຕົວຕົນໃນ URL ແລະ ຄັງເກັບຂໍ້ມູນຕ້ອງການມັນ, Git ຈະລົ້ມເຫຼວດ້ວຍຂໍ້ຜິດພາດ:

fatal: could not read Username for 'https://github.com': terminal prompts disabled

Changed in version 5.10.2: Weblate ໃຊ້ proactive authentication ກັບ Git 2.46.0 ແລະ ໃໝ່ກວ່າ ເມື່ອມີການລະບຸ HTTP credentials.

ສິ່ງນີ້ເຮັດໃຫ້ສາມາດເຂົ້າເຖິງຄັງເກັບຂໍ້ມູນ Azure DevOps ແລະ ເຮັດໃຫ້ການເຂົ້າເຖິງຄັງເກັບຂໍ້ມູນທີ່ຕ້ອງມີການຢືນຢັນຕົວຕົນໄວຂຶ້ນ.

Note

ຖ້າຊື່ຜູ້ໃຊ້ ຫຼື ລະຫັດຜ່ານຂອງທ່ານມີຕົວອັກສອນພິເສດ, ພວກມັນຈະຕ້ອງຖືກເຂົ້າລະຫັດແບບ URL encoded, ຕົວຢ່າງ https://user%40example.com:%24password%23@bitbucket.org/….

ການໃຊ້ພຣັອກຊີ

ຫາກທ່ານຕ້ອງການເຂົ້າເຖິງຄັງເກັບ Git ຜ່ານ HTTPS ໂດຍໃຊ້ພຣັອກຊີເຊີເວີ, ໃຫ້ຕັ້ງຄ່າຕົວປ່ຽນສະພາບແວດລ້ອມແຍກຕາມໂປຣໂຕຄໍ ຕາມທີ່ອະທິບາຍໄວ້ໃນ HTTP proxy.

ພາລາມິເຕີການຄວບຄຸມເວີຊັນ

Added in version 2026.9.

ພະລາມິເຕີຄວບຄຸມເວີຊັນ ຈະປັບແຕ່ງວິທີທີ່ສ່ວນປະກອບໂຕ້ຕອບກັບຄັງເກັບຂອງມັນ ໂດຍບໍ່ຕ້ອງເລືອກ ລະບົບຄວບຄຸມເວີຊັນອື່ນ. ພວກມັນຖືກຕັ້ງຄ່າແຍກຕາມສ່ວນປະກອບໃນ ພາລາມິເຕີການຄວບຄຸມເວີຊັນ, ແລະ ສະເພາະພະລາມິເຕີທີ່ໃຊ້ໄດ້ກັບ ແອັບ Weblate GitHub ທີ່ເລືອກເທົ່ານັ້ນທີ່ຈະມີໃຫ້ໃຊ້.

List of version control parameters

ຊື່ພາຣາມີເຕີ

Version control systems

ປ້າຍຊື່ (Label)

ຂໍ້ຄວາມຊ່ວຍເຫຼືອ

create_merge_request

  • azure_devops

  • bitbucketcloud

  • bitbucketserver

  • gitea

  • github

  • github-app

  • gitlab

  • pagure

ສ້າງຄຳຂໍຮ່ວມ (merge request)

ເປີດ pull ຫຼື merge request ສຳລັບການປ່ຽນແປງການແປ. ເມື່ອປິດໃຊ້ງານ, Weblate ຈະຍູ້ (push) ໄປຫາສາຂາທີ່ແປໂດຍກົງ, ເຊິ່ງຕ້ອງການສິດການຂຽນໃນສາຂານັ້ນ.

git_force_push

  • git

ບັງຄັບສົ່ງ (Force push)

ຂຽນທັບສາຂາທີ່ຢູ່ທາງໄກ (remote branch) ແທນທີ່ຈະປະຕິເສດການຍູ້ຂໍ້ມູນທີ່ບໍ່ແມ່ນ fast-forward. ໃຫ້ໃຊ້ສິ່ງນີ້ສະເພາະກັບຄັງເກັບທີ່ໃຊ້ສຳລັບການແປໂດຍສະເພາະເທົ່ານັ້ນ, ເພາະມັນຈະລຶບຄອມມິດ ຈາກຕົ້ນທາງ (upstream) ທີ່ບໍ່ມີຢູ່ໃນ Weblate ອອກໄປ.

merge_request_automerge

  • github

  • github-app

ຮ່ວມຄຳຂໍດຶງຂໍ້ມູນໂດຍອັດຕະໂນມັດ

ເປີດໃຊ້ GitHub auto-merge ສຳລັບ pull requests ທີ່ສ້າງໂດຍ Weblate, ເພື່ອໃຫ້ພວກມັນ ຖືກຮວມເຂົ້າກັນທັນທີທີ່ການກວດສອບທີ່ຈຳເປັນຜ່ານ. pull requests ທີ່ບໍ່ມີຫຍັງຕ້ອງລໍຖ້າ ຈະຖືກຮວມເຂົ້າກັນທັນທີ.

merge_request_merge_method

  • github

  • github-app

ວິທີການຮ່ວມ (Merge method)

ວິທີການທີ່ໃຊ້ເມື່ອຮວມ pull requests ໂດຍອັດຕະໂນມັດ. ຄັງເກັບຕ້ອງອະນຸຍາດໃຫ້ໃຊ້ວິທີນີ້.

ຕົວເລືອກທີ່ມີ:

  • merge -- ສ້າງ merge commit

  • squash -- Squash ແລະ merge

  • rebase -- Rebase ແລະ merge

Git

Hint

Weblate ຕ້ອງການ Git ເວີຊັນ 2.46 ຫຼື ໃໝ່ກວ່າ.

Note

Weblate ຈະກວດສອບການປ່ຽນເສັ້ນທາງ HTTP ແບບຖາວອນທີ່ຍັງຄົງຢູ່ໃນຊື່ໂຮສຂອງຄັງເກັບ ແລະ ຈະເກັບ URL ຂອງຄັງເກັບທີ່ເປັນທາງການໂດຍອັດຕະໂນມັດ. ການປ່ຽນແປງຈະຖືກບັນທຶກ ໄວ້ໃນປະຫວັດສ່ວນປະກອບວ່າເປັນການບຳລຸງຮັກສາຄັງເກັບ. ການປ່ຽນເສັ້ນທາງໄປຫາຊື່ໂຮສອື່ນ ຕ້ອງໄດ້ຕັ້ງຄ່າດ້ວຍຕົນເອງ.

See also

ເບິ່ງ ການເຂົ້າເຖິງຄັງເກັບ (repositories) ສຳລັບຂໍ້ມູນກ່ຽວກັບວິທີການເຂົ້າເຖິງຄັງເກັບຂໍ້ມູນປະເພດຕ່າງໆ.

Git LFS

Weblate does not support files tracked by Git LFS as translation files. It does not download or upload Git LFS objects. Git LFS smudging and pre-push uploads are disabled for Weblate-managed repositories, so LFS-tracked files remain pointer files. This behavior applies to every Git hosting provider.

ຄັງເກັບສາມາດໃຊ້ Git LFS ສຳລັບໄຟລ໌ທີ່ Weblate ບໍ່ຈຳເປັນຕ້ອງອ່ານ ຫຼື ແກ້ໄຂ. ຄັງເກັບຕົ້ນທາງ (upstream) ຍັງຄົງເປັນແຫຼ່ງຂໍ້ມູນຫຼັກສຳລັບອັອບເຈັກ LFS ເຫຼົ່ານີ້. ໃຫ້ໂຄລນຈາກຕົ້ນທາງເມື່ອທ່ານຕ້ອງການໄຟລ໌ແທ້ໆ ແທນທີ່ຈະເປັນພຽງຕົວຊີ້ (pointers) ເພາະຄັງເກັບ ທີ່ໃຫ້ບໍລິການໂດຍ Weblate ຈະບໍ່ລວມມີອັອບເຈັກ LFS.

ສຳລັບຂະບວນການເຮັດວຽກ merge request ຂອງ GitLab, Weblate ຈະປິດໃຊ້ງານ Git LFS ໃນ fork ທີ່ມັນຈັດການ. ສິ່ງນີ້ຈະປ້ອງກັນບໍ່ໃຫ້ GitLab ປະຕິເສດສາຂາການແປທີ່ມີພຽງຕົວຊີ້ ເມື່ອຄັງເກັບຕົ້ນທາງມີການເພີ່ມອັອບເຈັກ LFS ຫຼັງຈາກທີ່ fork ຖືກສ້າງຂຶ້ນ. fork ທີ່ຈັດການຢູ່ແລ້ວ ຈະຖືກຕັ້ງຄ່າໃໝ່ໃນການຍູ້ຂໍ້ມູນ (push) ຄັ້ງຕໍ່ໄປ. ສິ່ງນີ້ຈະບໍ່ປ່ຽນແປງການຕັ້ງຄ່າ Git LFS ຂອງໂຄງການຕົ້ນທາງ.

Git submodules

Weblate ບໍ່ໄດ້ດຶງຂໍ້ມູນ Git submodules ເມື່ອມີການໂຄລນຄັງເກັບ. ມັນຈະບໍ່ເລີ່ມຕົ້ນ ຫຼື ອັບເດດ submodules, ແລະ ຈະບໍ່ເຂົ້າໄປກວດສອບໃນຄັງເກັບຂອງ submodule ໃນລະຫວ່າງ ການຄົ້ນຫາໄຟລ໌ ຫຼື ການອັບເດດການແປ. ດັ່ງນັ້ນ ໄຟລ໌ທີ່ເກັບໄວ້ໃນ submodule ຈຶ່ງບໍ່ສາມາດ ໃຊ້ງານກັບ file masks ໄດ້ ເມື່ອ Weblate ເຊື່ອມຕໍ່ກັບຄັງເກັບຫຼັກ.

ຫາກໄຟລ໌ການແປຢູ່ໃນ submodule, ໃຫ້ເພີ່ມຄັງເກັບຂອງ submodule ນັ້ນເຂົ້າໃນ Weblate ເປັນສ່ວນປະກອບຂອງມັນເອງ ແທນທີ່ຈະເຂົ້າເຖິງຜ່ານຄັງເກັບຫຼັກ. ຈາກນັ້ນ Weblate ຈະສາມາດ ໂຄລນ, ອັບເດດ, ຄອມມິດ ແລະ ຍູ້ຂໍ້ມູນໄປຫາຄັງເກັບທີ່ເກັບໄຟລ໌ການແປແທ້ໆໄດ້. ຄັງເກັບຫຼັກ ຈະບັນທຶກພຽງແຕ່ຕົວຊີ້ຄອມມິດຂອງ submodule ເທົ່ານັ້ນ, ດັ່ງນັ້ນການອັບເດດຕົວຊີ້ນັ້ນ ຕ້ອງເຮັດຢູ່ພາຍນອກ Weblate, ຕົວຢ່າງ: ໃນຂະບວນການພັດທະນາປົກກະຕິ ຫຼື CI ຂອງທ່ານ.

Force pushing

Turn on the git_force_push version control parameter to make Weblate always force push. This is intended only in the case of using a separate repository for translations.

Warning

ໃຊ້ດ້ວຍຄວາມລະມັດລະວັງ, ເພາະສິ່ງນີ້ອາດເຮັດໃຫ້ການຄອມມິດ (commits) ໃນຄັງເກັບຂໍ້ມູນຕົ້ນທາງຂອງທ່ານສູນຫາຍໄດ້ໂດຍງ່າຍ.

Changed in version 2026.9: ສິ່ງນີ້ເຄີຍເປັນລະບົບຄວບຄຸມເວີຊັນ Git ພ້ອມການບັງຄັບຍູ້ ທີ່ແຍກຕ່າງຫາກ. ສ່ວນປະກອບທີ່ມີຢູ່ໄດ້ຖືກຍ້າຍໄປໃຊ້ Git ໂດຍເປີດໃຊ້ພະລາມິເຕີ git_force_push.

ການປັບແຕ່ງການຕັ້ງຄ່າ Git

Weblate ເອື້ອນໃຊ້ຄຳສັ່ງ VCS ທັງໝົດດ້ວຍ HOME=$DATA_DIR/home (ເບິ່ງ DATA_DIR), ດັ່ງນັ້ນການແກ້ໄຂການຕັ້ງຄ່າຜູ້ໃຊ້ຈຶ່ງຕ້ອງເຮັດໃນ DATA_DIR/home/.git.

GitHub Pull request

ລາຍລະອຽດການຕັ້ງຄ່າ pull request ຂອງ GitHub ແມ່ນມີຢູ່ໃນ GitHub Pull request.

GitLab Merge request

ລາຍລະອຽດການຕັ້ງຄ່າ merge request ຂອງ GitLab ແມ່ນມີຢູ່ໃນ GitLab Merge request.

Gitea Pull request

ລາຍລະອຽດການຕັ້ງຄ່າ pull request ຂອງ Gitea ແມ່ນມີຢູ່ໃນ Gitea Pull request.

Bitbucket Data Center Pull request

ລາຍລະອຽດການຕັ້ງຄ່າ pull request ຂອງ Bitbucket Data Center ແມ່ນມີຢູ່ໃນ Bitbucket Data Center Pull request.

Bitbucket Cloud Pull request

ລາຍລະອຽດການຕັ້ງຄ່າ pull request ຂອງ Bitbucket Cloud ແມ່ນມີຢູ່ໃນ Bitbucket Cloud Pull request.

Pagure Merge request

ລາຍລະອຽດການຕັ້ງຄ່າ merge request ຂອງ Pagure ແມ່ນມີຢູ່ໃນ Pagure Merge request.

Gerrit

ລາຍລະອຽດການຕັ້ງຄ່າ review request ຂອງ Gerrit ແມ່ນມີຢູ່ໃນ ຄຳຮ້ອງຂໍການກວດສອບ Gerrit.

Azure DevOps Pull request

ລາຍລະອຽດການຕັ້ງຄ່າ pull request ຂອງ Azure DevOps ແມ່ນມີຢູ່ໃນ Azure DevOps Pull request.

Mercurial

Mercurial ແມ່ນ VCS ອີກອັນໜຶ່ງທີ່ທ່ານສາມາດໃຊ້ໄດ້ໂດຍກົງໃນ Weblate.

Note

ມັນຄວນຈະເຮັດວຽກໄດ້ກັບທຸກເວີຊັນຂອງ Mercurial, ແຕ່ບາງຄັ້ງອາດມີການປ່ຽນແປງທີ່ບໍ່ເຂົ້າກັນໃນສ່ວນຕິດຕໍ່ຄຳສັ່ງ (command-line) ເຊິ່ງເຮັດໃຫ້ການເຊື່ອມຕໍ່ກັບ Weblate ຂັດຂ້ອງ.

See also

ເບິ່ງ ການເຂົ້າເຖິງຄັງເກັບ (repositories) ສຳລັບຂໍ້ມູນກ່ຽວກັບວິທີການເຂົ້າເຖິງຄັງເກັບຂໍ້ມູນປະເພດຕ່າງໆ.

Subversion

Weblate ໃຊ້ git-svn ເພື່ອເຮັດວຽກກັບຄັງເກັບຂໍ້ມູນ subversion. ມັນແມ່ນສະຄຣິບ Perl ທີ່ຊ່ວຍໃຫ້ສາມາດໃຊ້ subversion ຜ່ານ Git client ໄດ້, ເຊິ່ງເຮັດໃຫ້ຜູ້ໃຊ້ສາມາດຮັກສາການໂຄລນ (clone) ຄັງເກັບຂໍ້ມູນພາຍໃນໄດ້ທັງໝົດ ແລະ ທຳການຄອມມິດພາຍໃນເຄື່ອງໄດ້.

Note

Weblate ພະຍາຍາມກວດຫາໂຄງສ້າງຄັງເກັບຂໍ້ມູນ Subversion ໂດຍອັດຕະໂນມັດ - ມັນຮອງຮັບທັງ URL ໂດຍກົງສຳລັບແບຣນຊ໌ (branch) ຫຼື ຄັງເກັບຂໍ້ມູນທີ່ມີໂຄງສ້າງມາດຕະຖານ (branches/, tags/ ແລະ trunk/). ສາມາດເບິ່ງຂໍ້ມູນເພີ່ມເຕີມໄດ້ໃນ ເອກະສານ git-svn. ຖ້າຄັງເກັບຂໍ້ມູນຂອງທ່ານບໍ່ມີໂຄງສ້າງມາດຕະຖານ ແລະ ທ່ານພົບຂໍ້ຜິດພາດ, ໃຫ້ລອງລວມເອົາຊື່ແບຣນຊ໌ໄວ້ໃນ URL ຂອງຄັງເກັບຂໍ້ມູນ ແລະ ປະຊ່ອງແບຣນຊ໌ໃຫ້ຫວ່າງໄວ້.

ຂໍ້ມູນການຢືນຢັນຕົວຕົນຂອງ Subversion

Weblate ຄາດຫວັງໃຫ້ທ່ານຍອມຮັບໃບຢັ້ງຢືນ (certificate) ລ່ວງໜ້າ (ແລະ ຂໍ້ມູນການຢືນຢັນຕົວຕົນຂອງທ່ານຖ້າຈຳເປັນ). ມັນຈະຊອກຫາເພື່ອແຊກພວກມັນເຂົ້າໃນໄດເຣັກທໍຣີ DATA_DIR. ໃຫ້ຍອມຮັບໃບຢັ້ງຢືນໂດຍການໃຊ້ svn ໜຶ່ງຄັ້ງ ພ້ອມກັບຕັ້ງຄ່າຕົວປ່ຽນສະພາບແວດລ້ອມ $HOME ໃຫ້ເປັນ DATA_DIR:

# 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

See also

DATA_DIR

ໄຟລ໌ພາຍໃນເຄື່ອງ

Hint

ເບື້ອງຫຼັງແມ່ນໃຊ້ອັນດຽວກັບ Git. ມັນຕ້ອງການການຕິດຕັ້ງ Git ແລະ ຊ່ວຍໃຫ້ທ່ານສາມາດປ່ຽນໄປໃຊ້ Git ແບບດັ້ງເດີມພ້ອມກັບປະຫວັດການແປທັງໝົດຂອງທ່ານ.

Weblate ຍັງສາມາດເຮັດວຽກໄດ້ໂດຍບໍ່ຕ້ອງມີ VCS ທາງໄກ. ການແປເລີ່ມຕົ້ນແມ່ນນຳເຂົ້າໂດຍການອັບໂຫຼດ. ຕໍ່ມາທ່ານສາມາດແທນທີ່ແຕ່ລະໄຟລ໌ດ້ວຍການອັບໂຫຼດໄຟລ໌, ຫຼື ເພີ່ມຂໍ້ຄວາມການແປໂດຍກົງຈາກ Weblate (ປະຈຸບັນໃຊ້ໄດ້ສະເພາະການແປແບບ monolingual ເທົ່ານັ້ນ).

ໃນເບື້ອງຫຼັງ Weblate ຈະສ້າງຄັງເກັບຂໍ້ມູນ Git ໃຫ້ທ່ານ ແລະ ທຸກການປ່ຽນແປງຈະຖືກຕິດຕາມໄວ້. ໃນກໍລະນີທີ່ທ່ານຕັດສິນໃຈໃຊ້ VCS ເພື່ອເກັບຮັກສາການແປໃນພາຍຫຼັງ, ທ່ານກໍມີຄັງເກັບຂໍ້ມູນພາຍໃນ Weblate ທີ່ສາມາດໃຊ້ເປັນພື້ນຖານໃນການເຊື່ອມຕໍ່ໄດ້ແລ້ວ.