-
Piani Business ed Enterprise
Mettiti in contatto con il reparto vendite per dubbi relativi alle licenze.
-
Piano Enterprise (legacy)
Mettiti in contatto con il reparto vendite per dubbi relativi alle licenze.
Il branching è utilizzato nel controllo delle versioni del software. Le copie dei file di progetto chiamate rami consentono ai team di lavorare su versioni parallele del progetto contemporaneamente mantenendo una copia non modificata. Questo elimina il rischio di sovrascrivere accidentalmente le modifiche degli altri ai file di progetto.
Il progetto principale viene copiato quando viene creato un nuovo ramo con modifiche che vengono apportate solo a quel ramo. Quando le modifiche sono complete, il ramo viene fuso di nuovo nel progetto principale. È possibile lavorare su più rami contemporaneamente e dopo la fusione, i rami possono essere eliminati. I tag di un ramo esistente vengono copiati nel nuovo ramo.
Limitazioni
-
Tutti i ruoli tranne Traduttore e Ospite hanno accesso alla vista .
-
Le fusioni non possono essere annullate e i rami non possono essere ripristinati.
-
I Lavori creati in un ramo specifico non sono visibili nel progetto principale e viceversa. Quando un ramo viene fuso nel progetto principale, eventuali lavori aperti in esso vengono persi.
-
I rapporti nella vista
riflettono solo lo stato del ramo attivo. Fondere un ramo nel progetto principale aggiorna i rapporti del progetto principale. -
La vista
contiene solo attività nel ramo attivo. Le attività nei rami non sono visibili nel progetto principale e viceversa. Le attività in un ramo vengono perse quando viene fuso nel progetto principale. -
La sincronizzazione di GitHub può essere utilizzata solo sul progetto principale e non sui rami.
-
Commenti fatti in un ramo non sono visibili nel progetto principale e viceversa.
-
creati in un ramo non sono visibili nel progetto principale e viceversa. Quando un ramo viene fuso nel progetto principale, eventuali ordini aperti in esso vengono persi.
-
I traduttori non possono essere limitati a rami specifici ma ricevono il permesso di lavorare su specifici locali. I traduttori dovrebbero essere istruiti su come lavorare con i rami.
Il Branching è abilitato nella scheda
delle con l'opzione di proteggere il ramo principale dalle modifiche.Quando abilitato, un menu dei rami viene presentato sulla schermata del progetto dove possono essere selezionati i rami di lavoro. Per specificare un ramo in CLI, usa il parametro
--branch
:
--branch <branch_name>
I rami sono elencati nella vista
dove vengono presentate le informazioni sulla creazione e fusione. I rami possono anche essere eliminati o fusi e possono essere creati lavori per quel ramo dalla vista .Per elencare tutti i rami per il progetto tramite API o CLI, esegui:
$ phrase branches list <project_id>
Per eliminare un ramo tramite API o CLI, esegui:
$ phrase branch delete <project_id> <branch_name>
Le funzioni di Amministratore, Project Manager e Sviluppatore possono creare nuovi rami nell'editor di traduzione, tramite API o nella CLI.
Per creare un ramo nell'editor di traduzione, segui questi passaggi:
-
Dalla pagina di un
, seleziona la scheda . -
Clicca Crea ramo.
Si apre la finestra
. -
Fornisci un nome per il branch.
-
Clicca Crea ramo.
Il nuovo branch è aggiunto all'elenco.
Per creare un branch tramite API o CPI, esegui:
$ phrase branches create --project_id <project_id> --data <data>
Per creare un branch durante il push delle traduzioni, esegui:
$ phrase push --branch <branch_name>
Dopo che sono state apportate modifiche a un branch, può essere unito di nuovo nella traduzione principale per incorporare eventuali nuove traduzioni.
Solo le modifiche alle seguenti risorse vengono applicate al branch principale durante le unioni:
-
Impostazioni locali
-
Chiavi
-
Traduzioni
Le modifiche ad altre risorse, come Attività, Lavori e Ordini, non vengono applicate.
Conflitti
Un conflitto si verifica quando una risorsa (traduzione, chiave o impostazioni locali) è cambiata nel progetto principale tra il momento in cui un branch è creato e quando viene unito di nuovo al progetto principale. Ad esempio, le traduzioni e le impostazioni delle chiavi (come le forme plurali) possono essere cambiate nel progetto principale dopo che un branch è stato creato, rendendo i valori nel branch diversi da quelli nel progetto principale.
Per unire un branch, segui questi passaggi:
-
Dalla vista Confronta e Unisci.
di un progetto, seleziona un branch da unire e fai clic suSi apre la pagina
. Le informazioni sulle traduzioni da modificare durante l'unione possono essere accessibili facendo clic nelle celle. -
Se ci sono conflitti, seleziona una strategia di unione:
-
Seleziona
per rifiutare le modifiche in conflitto e preservare le traduzioni esistenti. -
Seleziona
per sostituire le traduzioni esistenti con le modifiche dal branch.
-
-
Clicca Unire Branch.
Il branch è unito al progetto principale.
Per unire un branch tramite API o CPI, esegui:
$ frase branch unire \
--project_id <project_id> \
--name <name> \
--data '{"strategy":"use_main"}' \
--access_token <token>
-
usa_branch
risolve i conflitti applicando le modifiche dal branch e se non specificato è il predefinito. -
usa_main
risolve i conflitti rifiutando le modifiche dal branch.usa_master
è anche supportato.
Quando si utilizza CLI, specifica un branch da pushare o pullare con il parametro --branch
.
$ phrase push --branch <branch_name> $ frase pull --branch <branch_name>
Se il branch specificato non esiste in un progetto, il cliente lo crea.
Usa --usa-nome-branch-locale
per pushare e pullare usando il nome del branch di un git branch attivo:
$ frase push --usa-nome-branch-locale $ frase pull --usa-nome-branch-locale
Tutti gli endpoint API che richiedono un argomento progetto supportano anche il parametro --branch
per eseguire un'azione su un branch specifico di un progetto:
$ frase caricare creare <project_id> \ --branch <branch_name> --file /path/to/my/file.json \ --file-format json \ --locale-id abcd1234cdef1234abcd1234cdef1234 \ --tags fantastico-caratteristica,ha-bisogno-di-correzione \ --impostazioni-locali "{"en": "2"}" \ --opzioni-formato "{"foo": "bar"}"