לוקליזציה רציפה: כל שפה, בכל מיזוג.
לוקליזציה רציפה מתרגמת מחרוזות חדשות ומשתנות תוך כדי שינויי הקוד, במקום בשלב נפרד לפני כל מהדורה. כל שפה נשארת מוכנה להפצה יחד עם הקוד שנזקק לה.
מהי לוקליזציה רציפה?
לוקליזציה רציפה היא אופן עבודה שבו מחרוזות חדשות ומשתנות נשלחות לתרגום אוטומטית ברגע שהן משתנות, והטקסט המתורגם חוזר למוצר ללא תיאום ידני.
אין שלב תרגום, כי התרגום never מפסיק. מפתח ממזג מחרוזת, התרגומים מגיעים באותו זרם כמו הקוד, וההפצה לא תלויה בקובץ של אף אחד.
זהו החצי הלוקליזציוני של מסירה רציפה (Continuous Delivery). צוות שמבצע מיזוג מדי יום ומעביר לתרגום כל כמה שבועות, משאיר שפות מאחורי הקוד במרבית ימי החודש. לוקליזציה רציפה מצמצמת את הפער הזה למשך הרצה אחת.
זה לא אומר שתוצרי מכונה עולים לאוויר ללא קריאה. אתם מחליטים אילו מחרוזות דורשות אדם, וההפצה יכולה לכלול רק מה שנבדק.
ההבדל הוא מתי מתבצע התרגום, לא מי עושה זאת.
| מה משתנה | העברה בכמויות | רציף |
|---|---|---|
| צד לצד | ||
| מתי מתבצע התרגום | בשלב לפני כל שחרור | כאשר כל מחרוזת משתנה |
| מה מפעיל את התהליך | מישהו מייצא קובץ | דחיפה (push), מיזוג (merge) או שינוי תוכן |
| גודל כל חלק | שבועות של מחרוזות בבת אחת | המחרוזות בשינוי אחד |
| למה מחכה השחרור | שהקובץ יחזור | סקירה, על המחרוזות שסימנת עבורה |
| שינוי תרגום מאוחר | סיבוב נוסף | הרצה חוזרת של אותו מפתח בודד |
| על סמך מה עובד המתרגם | גיליון אלקטרוני של מחרוזות | השורה, עם מונחי הגלוסרי שלה, התאמות זיכרון וצילומי מסך |
| שפות בהשקה | מדורג, גל אחר גל | יחד, עם הפיצ׳ר |
- מתי מתבצע התרגום
- בשלב לפני כל שחרור
- מה מפעיל את התהליך
- מישהו מייצא קובץ
- גודל כל חלק
- שבועות של מחרוזות בבת אחת
- למה מחכה השחרור
- שהקובץ יחזור
- שינוי תרגום מאוחר
- סיבוב נוסף
- על סמך מה עובד המתרגם
- גיליון אלקטרוני של מחרוזות
- שפות בהשקה
- מדורג, גל אחר גל
- מתי מתבצע התרגום
- כאשר כל מחרוזת משתנה
- מה מפעיל את התהליך
- דחיפה (push), מיזוג (merge) או שינוי תוכן
- גודל כל חלק
- המחרוזות בשינוי אחד
- למה מחכה השחרור
- סקירה, על המחרוזות שסימנת עבורה
- שינוי תרגום מאוחר
- הרצה חוזרת של אותו מפתח בודד
- על סמך מה עובד המתרגם
- השורה, עם מונחי הגלוסרי שלה, התאמות זיכרון וצילומי מסך
- שפות בהשקה
- יחד, עם הפיצ׳ר
איך עובד לוקליזציה רציפה
עקבו אחר מחרוזת חדשה אחת דרך הלולאה. כל עצירה מראה מה שבאמת תראו.
השינוי מגיע ל-Transglot דרך ה-CLI, פעולת GitHub או האפליקציה במארח ה-Git שלכם. קבצי המקור מפוענחים באחד מ-20 פורמטים מקומיים, וכל מחרוזת מושווית למה שהפרויקט כבר מכיל. רק מחרוזות חדשות ומשתנות ממשיכות הלאה.
התאמה מדויקת מזיכרון התרגום ממלאת את השורה ואינה עולה במילים. כל מה שנותר נשלח ל-Glossa יחד עם המילון שלך, מדריך הסגנון שלך וההקשר של אותו מפתח.
מציין מיקום, צורות רבים, מונחי מילון ואורך נבדקים בכל שורה בכל הרצה. מציין מיקום פגום, צורת רבים חסרה או מונח מילון אסור מתוקנים פעם אחת ונבדקים שוב, ואם הם נכשלים בפעם השנייה הם נדחים ולא נשלחים. שורה שחרגה רק מאורכה נכתבת, ומתוכנית Team אישור אוטומטי או הרצת QA מסמנת אותה לבדיקה.
הרצה לעולם לא דורסת שורה שאדם ערך או בדק. אם המקור שלה משתנה מאוחר יותר, הטקסט נשמר, ההרצה סופרת את השורה ומדווחת לך, ומתוכנית Team הצעה לעדכון ממתינה לצידה עד שמישהו יאשר אותה.
אפליקציות Git מבצעות commit לקבצי locale לענף סנכרון אחד ושומרות על pull request אחד מעודכן. ב-GitHub, הוסף את התגובה /translate ל-pull request והקבצים יגיעו לענף הייעודי של אותו pull request. לחלופין, פרסם ל-CDN והמוצר הפועל קורא את השינוי ללא צורך בגרסה חדשה כלל.
שש דרכים שבהן לוקליזציה רציפה משתבשת, ומה עוצר כל אחת מהן
הרצה דורסת עבודה של אדם
כל כותב בודק תחילה את מצב השורה: הרצה, התאמה בזיכרון ו-push. שורה שאדם ערך או בדק נשארת, וההרצה מדווחת עליה.
→fr, נבדק, המקור השתנה זה עתה
✓נשמר, נספר, דווח
מחרוזת פגומה מגיעה לסביבת הייצור
כל אסימון שנכנס חייב לצאת. בפרויקט ICU, הודעה שתגרור שגיאה בעת העיבוד לא תיכלל במשיכת הקוד (pull), במחבר ובחבילת ה-CDN, והריצה תציין זאת בשמה.
→{count, plural, one {# article}
✓הושמטה מהקובץ, צוינה בשם הריצה
המאגר מתמלא בבקשות משיכה אוטומטיות
ענף סנכרון אחד ובקשת משיכה אחת לכל מאגר. שני עדכונים מהירים מתמזגים אליו במקום לפתוח בקשה נוספת.
→#812 #815 #819 #823 עדכון l10n
✓#812 transglot/sync, עודכן במקום
עדכון במקור משאיר תרגומים ישנים מאחור
כל שורת יעד רושמת את המקור מולו נכתבה, כך שמחרוזת שהשתנתה מזוהה כלא עדכנית בכל השפות בו־זמנית, ורק המפתח הזה עובר ריצה מחודשת.
→׳Save׳ הפך ל׳Save draft׳. fr, de, ja עדיין מציגים Save
✓fr, de, ja מריצים מחדש רק את המפתח הזה
כל ריצה מחייבת מחדש את כל הפרויקט
גודל הריצה נקבע לפי מה שהשתנה. מחרוזת שלא השתנתה אינה נשלחת, התאמה מדויקת בזיכרון אינה עולה מילים, ושורה שבבעלות אדם נדחית לפני כל חיוב.
→הקובץ מכיל 48,000 מילים
✓ריצה זו: 60 מילים
משיכה לא גמורה מוחקת קובץ שפה
אם השרת מדווח שאין רשומות לשפה מסוימת, פעולת המשיכה מסרבת לדרוס קובץ קיים ומסיימת עם קוד יציאה 1 כדי לעצור את הצינור.
→משיכה: 0 רשומות ל-ja, הקובץ מכיל 1,204
✓מסרב לדרוס את locales/ja.json בחבילה ריקה
- run 4182 fr: חסר placeholder בטיוטה, תוקן בניסיון חוזר
- run 4182 de: 3 שורות נשמרו, הן בבעלות אדם
- run 4182 ja: 41 שורות מהזיכרון, 0 מילים
- run 4183 ar: חסרה צורת ריבוי לאחר ניסיון חוזר, השורה נדחתה
- pull נכתב locales/pt-BR.json
- sync transglot/sync עודכן, בקשת משיכה #812
שלושתם מתחברים למאגר שלכם. ההבדל הוא במה שקורה בעת המיזוג.
נקרא מדפי החברה של כל ספק ב-5 בנובמבר 2026. שורת המחירים מגיעה מדפי ההשוואה שלנו, המקושרים להלן, המציגים את התוכנית ואת החישוב. מחירים ותוכניות משתנים, לכן בדקו אותם לפני ההחלטה.
| מה קורה | Transglot | Lokalise | Crowdin |
|---|---|---|---|
| מחרוזת חדשה ממוזגת | מתורגם כברירת מחדל ה-push מתחיל את ההרצה. הגדרת פרויקט מכבה זאת. | מתורגם לאחר ההגדרה אוטומציות כבויות כברירת מחדל בעת יצירת מפתח וייבוא קובץ. זרימת עבודה עם שלב AI רצה לפי לוח הזמנים שלה. | מתורגם לאחר הפעלה תחת הגדרות, תרגום אוטומטי, זה רץ בכל העלאה. סנכרון Git רץ כל שעה כברירת מחדל. |
| תרגום נכשל בבדיקה | תיקון חד-פעמי, ואז דחייה עבור placeholder שבור, צורת ריבוי או מונח אסור, בכל שורה של כל הרצה. חריגת אורך נרשמת. בפרויקט ICU, שורה שבורה נשארת מחוץ ל-pull, למחברים ול-CDN. | בדיקה ברמת שגיאה עוצרת שמירה בעורך כל בדיקה מוגדרת ככבויה, אזהרה או שגיאה. | בדיקה ברמת שגיאה עוצרת שמירה כל בדיקה מוגדרת כאזהרה או שגיאה. |
| אדם כבר ערך את השורה | ההרצה מסרבת לכתוב זאת כך גם התאמת זיכרון ו-push. אם המקור משתנה מאוחר יותר, ההרצה מדווחת על השורה. | אוטומציות ממלאות ערכים ריקים כברירת מחדל אפשרות כפייה ופעולת ניקוי כותבות מעל ערכים מלאים. | אפשרויות שומרות על שורות אנושיות ומאושרות קיימת גם אפשרות החלפה-הכול. |
| בקשות pull במאגר עמוס | ענף אחד, בקשת pull אחת מעודכן במקום בכל push. | ענף חדש לכל בקשת pull נקרא עם חותמת זמן. | ענף שירות, מסונכרן כל שעה כל שעה היא ברירת המחדל, וניתן לשנות את המרווח. |
| מה שהתוכנית סופרת | מילים מתורגמות, פעם אחת לכל שפה התאמות זיכרון מדויקות אינן עולות דבר. אחסון מחרוזת אינו עולה דבר. | מילים מעובדות גם שפת הבסיס וגם שפת היעד נספרות. | מילים מאוחסנות מילים לתרגום, כפול שפות היעד. |
| מה שמממן את הבינה המלאכותית | המילים הכלולות בתוכנית השירות אינו מחויב בנפרד. | הקצאות מילים לבינה מלאכותית לפי תוכנית מילים לבינה מלאכותית סטנדרטית ופרו מופיעות כשורות נפרדות בתוכנית. | יתרה נפרדת, או מפתח משלך הבינה המלאכותית המנוהלת של Crowdin משולמת באמצעות קרדיטים, מחוץ למינוי. |
| אותה עבודה: 5,000 מחרוזות ב-10 שפות | $39 לחודש Team, התרגום כלול | $1,049 לחודש Advanced (billed yearly) | $138 לחודש Pro with 560K hosted words (billed monthly), בינה מלאכותית בנוסף |
| GitHub, GitLab, Bitbucket, Azure Repos, CLI ושרת MCP | כולם יישומוני ה-Git מתחילים בתוכנית Team ומכסים את גרסאות הענן. | כולם אינטגרציות זמינות בכל התוכניות. | כולם השירות מכסה גם את Bitbucket Server. |
- מחרוזת חדשה ממוזגת
- מתורגם כברירת מחדלה-push מתחיל את ההרצה. הגדרת פרויקט מכבה זאת.
- תרגום נכשל בבדיקה
- תיקון חד-פעמי, ואז דחייהעבור placeholder שבור, צורת ריבוי או מונח אסור, בכל שורה של כל הרצה. חריגת אורך נרשמת. בפרויקט ICU, שורה שבורה נשארת מחוץ ל-pull, למחברים ול-CDN.
- אדם כבר ערך את השורה
- ההרצה מסרבת לכתוב זאתכך גם התאמת זיכרון ו-push. אם המקור משתנה מאוחר יותר, ההרצה מדווחת על השורה.
- בקשות pull במאגר עמוס
- ענף אחד, בקשת pull אחתמעודכן במקום בכל push.
- מה שהתוכנית סופרת
- מילים מתורגמות, פעם אחת לכל שפההתאמות זיכרון מדויקות אינן עולות דבר. אחסון מחרוזת אינו עולה דבר.
- מה שמממן את הבינה המלאכותית
- המילים הכלולות בתוכניתהשירות אינו מחויב בנפרד.
- אותה עבודה: 5,000 מחרוזות ב-10 שפות
- $39 לחודשTeam, התרגום כלול
- GitHub, GitLab, Bitbucket, Azure Repos, CLI ושרת MCP
- כולםיישומוני ה-Git מתחילים בתוכנית Team ומכסים את גרסאות הענן.
- מחרוזת חדשה ממוזגת
- מתורגם לאחר ההגדרהאוטומציות כבויות כברירת מחדל בעת יצירת מפתח וייבוא קובץ. זרימת עבודה עם שלב AI רצה לפי לוח הזמנים שלה.
- תרגום נכשל בבדיקה
- בדיקה ברמת שגיאה עוצרת שמירה בעורךכל בדיקה מוגדרת ככבויה, אזהרה או שגיאה.
- אדם כבר ערך את השורה
- אוטומציות ממלאות ערכים ריקים כברירת מחדלאפשרות כפייה ופעולת ניקוי כותבות מעל ערכים מלאים.
- בקשות pull במאגר עמוס
- ענף חדש לכל בקשת pullנקרא עם חותמת זמן.
- מה שהתוכנית סופרת
- מילים מעובדותגם שפת הבסיס וגם שפת היעד נספרות.
- מה שמממן את הבינה המלאכותית
- הקצאות מילים לבינה מלאכותית לפי תוכניתמילים לבינה מלאכותית סטנדרטית ופרו מופיעות כשורות נפרדות בתוכנית.
- אותה עבודה: 5,000 מחרוזות ב-10 שפות
- $1,049 לחודשAdvanced (billed yearly)
- GitHub, GitLab, Bitbucket, Azure Repos, CLI ושרת MCP
- כולםאינטגרציות זמינות בכל התוכניות.
- מחרוזת חדשה ממוזגת
- מתורגם לאחר הפעלהתחת הגדרות, תרגום אוטומטי, זה רץ בכל העלאה. סנכרון Git רץ כל שעה כברירת מחדל.
- תרגום נכשל בבדיקה
- בדיקה ברמת שגיאה עוצרת שמירהכל בדיקה מוגדרת כאזהרה או שגיאה.
- אדם כבר ערך את השורה
- אפשרויות שומרות על שורות אנושיות ומאושרותקיימת גם אפשרות החלפה-הכול.
- בקשות pull במאגר עמוס
- ענף שירות, מסונכרן כל שעהכל שעה היא ברירת המחדל, וניתן לשנות את המרווח.
- מה שהתוכנית סופרת
- מילים מאוחסנותמילים לתרגום, כפול שפות היעד.
- מה שמממן את הבינה המלאכותית
- יתרה נפרדת, או מפתח משלךהבינה המלאכותית המנוהלת של Crowdin משולמת באמצעות קרדיטים, מחוץ למינוי.
- אותה עבודה: 5,000 מחרוזות ב-10 שפות
- $138 לחודשPro with 560K hosted words (billed monthly), בינה מלאכותית בנוסף
- GitHub, GitLab, Bitbucket, Azure Repos, CLI ושרת MCP
- כולםהשירות מכסה גם את Bitbucket Server.
התחילו ממקום המחרוזות שלכם. כל דרך מובילה לאותו צינור עבודה.
איך להגדיר לוקליזציה רציפה
- 01
הוצאת מחרוזות מהקוד
כל מחרוזת המוצגת למשתמש זקוקה למפתח יציב בקובץ הלוקאל. Transglot קורא 20 פורמטים, אז שמור על זה שיש לך.
jsonyamlxliffarb - 02
חיבור המאגר
פקודת האתחול מאתרת את קבצי הלוקאל שלך, מבצעת כניסה דרך הדפדפן, מעלה את מה שכבר יש לך ומריצה את התרגום הראשון.
npx transglot@latest init - 03
הרצה בכל מיזוג
הוסף את פעולת GitHub, הפעל את CLI מכל CI אחר, או התקן את האפליקציה עבור GitHub, GitLab, Bitbucket או Azure Repos.
transglot push --wait - 04
החלט מה דורש אדם
הגדר min_state ל-reviewed בכלל pull וקובץ זה יכיל רק מחרוזות שאדם בדק. השאר זאת כבויה וטיוטות יישלחו.
min_state: reviewed
מה העלות להרצה בכל מיזוג: המילים שהשתנו.
מילה היא מילת מקור, נספרת פעם אחת לכל שפת יעד. הרצה נמדדת לפי מה שהשתנה, כך שמיזוג הכולל שתים עשרה מילים בחמש שפות נספר כשישים, לא משנה כמה גדול הפרויקט.
נכנס ב-Starter: $19/mo, 300,000 מילים בחודש.
זה בערך 9% מההקצבה.
זה סופר תרגום בלבד. בדיקות איכות, טיוטות קול מותג ותיקונים גם נספרים כמילים, והתאמות מדויקות מהזיכרון אינן עולות דבר. ה-CLI ופעולת GitHub מתחילים ב-Starter, והאפליקציות ל-GitHub, GitLab, Bitbucket ו-Azure Repos מתחילות ב-Team.
שלושה דברים שתרגום רציף לא פותר
מחרוזות שעדיין תקועות בקוד
פלטפורמת תרגום יכולה לתרגם רק מה שהיא מסוגלת לקרוא. מחרוזות מקודדות קשיח ומשפטים המורכבים מחלקים שונים חייבים להיות מתוקנים קודם, והם הסיבה הנפוצה לעיכוב בהשקה.
אף אחד לא אחראי על המילים
אוטומציה מעבירה מחרוזות. היא לא מחליטה איך המוצר שלך מכנה דברים. מישהו חייב להיות אחראי על הגלוסרי, אחרת שפה שאף אחד לא קורא תיסחף ללא ידיעת איש.
טקסט שדורש שיקול דעת
טקסט משפטי, תמחור וסלוגנים מותגיים ראויים לבחינה אנושית. שלחו אותם לבדיקה והשאירו אותם מחוץ לקבצים המופצים עד שמישהו יאשר אותם.
שאלות נפוצות על תרגום רציף
השאלות שצוותים שואלים לפני שהם מפעילים את זה.
מהו תרגום רציף?
איך תרגום רציף שונה מתרגום מסורתי?
האם תרגום רציף הוא אותו הדבר כמו CI/CD?
האם אני צריך פלטפורמת CI/CD עבור תרגום רציף?
האם תרגום רציף משמעו אין בדיקה אנושית?
האם הרצה אוטומטית יכולה לדרוס עריכה של מתרגם?
האם תרגום רציף משתלם לצוות קטן?
איך אני מונע מהרצה לעלות יותר ממה שציפיתי?
האם זה עובד עם GitLab, Bitbucket ו-Azure DevOps?
האם אפשר לבצע תרגום רציף ללא Git?
האם תרגומים יכולים להתעדכן ללא השקה?
איך מעבירים פרויקט קיים?
41 מחברים, כבר מובנים.
חברו מאגר קוד. המיזוג הבא ישלים את השאר.
פקודה אחת מאתרת את קובצי השפה שלכם, מבצעת כניסה דרך הדפדפן ומריצה את התרגום הראשון.