Gestione della traduzione

branching (Strings)

Contenuti tradotti automaticamente dall'inglese con Phrase Language AI.

Disponibile per

  • Piani Business ed Enterprise

Contatta ilreparto vendite per dubbi relativi alle licenze.

Il branching viene utilizzato nel controllo versione del software. Copie dei file di progetto chiamate branch consentono ai team di lavorare su versioni parallele del progetto contemporaneamente, mantenendo una copia non modificata. Ciò elimina il rischio di sovrascrivere accidentalmente le modifiche di altri ai file di progetto.

Il progetto principale viene copiato quando viene creato un nuovo branch, con le modifiche apportate solo a quel branch. Quando le modifiche sono Completa, il branch viene unito nuovamente al progetto principale. È possibile lavorare su più branch contemporaneamente e, dopo l'unione, i branch vengono eliminati automaticamente. I branch uniti rimangono disponibili nella scheda Uniti per un monitoraggio semplificato della cronologia. I tag di un branch esistente vengono copiati nel nuovo branch.

Limitazioni

  • Tutti i ruoli eccetto traduttore e Guest possono accedere alla vista branch.

  • I merge non possono essere annullati e i branch non possono essere ripristinati.

  • I lavori creati in uno specifico branch non sono visibili nel progetto principale e viceversa. Quando un branch viene unito al progetto principale, tutti i lavori aperti al suo interno vengono persi.

  • I report nella vista Report riflettono solo lo stato del branch attivo. L'unione di un branch nel progetto principale aggiorna i report del progetto principale.

  • La vista Attività contiene solo le attività nel branch attivo. Le attività nei branch non sono visibili nel progetto principale e viceversa. Le attività in un branch vengono perse quando lo si unisce al progetto principale.

  • GitHub Sync può essere usato solo sul progetto principale e non sui branch.

  • I commenti fatti in un branch non sono visibili nel progetto principale e viceversa.

  • Gli ordini creati in un branch non sono visibili nel progetto principale e viceversa. Quando un branch viene unito al progetto principale, tutti gli ordini aperti al suo interno vengono persi.

  • I traduttori non possono essere limitati a branch specifici, ma ricevono il permesso di lavorare su lingue specifiche. I traduttori dovrebbero essere istruiti su come lavorare con i branch.

Abilitare il branching

Il branching è abilitato nella scheda<1> Advanced} delle impostazioni del progetto con l'opzione di proteggere il branch principale dalle modifiche.

Quando abilitato, un menu dei branch Branch Menu viene presentato nella schermata del progetto dove è possibile selezionare i branch su cui lavorare. Per specificare un branch nella CLI, usare il parametro --branch:

--branch <branch_name>

I branch sono elencati nella scheda<1> Branches} di un progetto, dove vengono presentate le informazioni su creazione e merge. I branch possono anche essere eliminati o uniti e i job creati per quel branch dalla scheda<2> Branches}.

Per elencare tutti i branch per un progetto tramite API o CLI, eseguire:

$ phrase branches list --project_id <project_id>

# ad es.
$ phrase branches list --project_id 1d8ae641902624df63ce6fbd64ff9549$ phrase branches list <project_id>

Per eliminare un branch tramite API o CLI, eseguire:

$ phrase branches delete --project_id <project_id> --name <branch_name>

# ad es.
$ phrase branches delete --project_id 1d8ae641902624df63ce6fbd64ff9549 --name test-test$ phrase branch delete <project_id> <branch_name>

Proteggi branch principale

Proteggi branch principale limita le modifiche al progetto principale, richiedendo che tutte le modifiche vengano effettuate in un branch.

Quando abilitato:

  • Impostazioni locali, chiavi e traduzioni non possono essere aggiunte, modificate o eliminate direttamente nel progetto principale. Questa restrizione si applica all'intera risorsa impostazioni locali, inclusa la configurazione per impostazioni locali come il profilo di traduzione automatica assegnato, non solo al nome o alle traduzioni delle impostazioni locali.

    Per modificare un'impostazione per impostazioni locali su un progetto principale protetto, disabilitare temporaneamente la protezione del branch, modificare, quindi riabilitare la protezione.

  • Il caricamento di file e la gestione degli screenshot sono disabilitati nel progetto principale.

  • Un branch deve essere selezionato prima di importare i file.

  • Le automazioni non vengono eseguite sul progetto principale.

Creare un branch

I ruoli amministratore, project manager, designer e sviluppatore possono creare nuovi branch nella scheda branch, tramite API o nella CLI. I branch possono essere creati da qualsiasi altro branch, non solo dal branch principale. Sono supportati fino a 5 livelli di branch.

Per creare un branch dall'interfaccia utente, seguire questi passaggi:

  1. Da una pagina progetto, selezionare la scheda branch.

  2. Fare clic su Crea branch.

    Si apre la finestra Crea branch.

  3. Fornire un nome per il branch.

  4. Selezionare un branch di base dall'elenco dei branch esistenti.

  5. Fare clic su Crea.

    Il nuovo branch viene aggiunto all'elenco.

Per creare un branch tramite API o CPI, eseguire:

$ phrase branches create --project_id <project_id> --data <data>

Per creare un branch durante l'invio delle traduzioni, eseguire:

$ phrase push --branch <branch_name>

Sincronizza branch

La sincronizzazione assicura che il branch di lavoro rimanga allineato con le ultime modifiche del branch da cui ha avuto origine. In questo modo, i traduttori possono lavorare con una versione aggiornata del contenuto anche in progetti a lungo termine.

Per sincronizzare un branch con il suo branch di base, seguire questi passaggi:

  1. Nella scheda branch, fare clic su Sincronizza con il branch di base accanto al branch desiderato.

    La pagina Sincronizza viene visualizzata con informazioni su eventuali conflitti e modifiche da sincronizzare con il branch di base.

  2. Fare clic su una qualsiasi delle modifiche rilevate per esaminarla prima della sincronizzazione.

    Viene visualizzata una tabella con i dettagli sulla modifica selezionata.

  3. Selezionare Sincronizza e confermare per applicare le modifiche.

    Le modifiche vengono aggiunte al branch di base e diventano visibili nell'editor di traduzione. Le informazioni sull'ultima sincronizzazione vengono visualizzate nella colonna Sincronizzato della scheda branch.

La sincronizzazione del branch può essere eseguita anche tramite API eseguendo questo comando CLI:

$ phrase branches sync \
  --project_id <project_id> \
  --name <branch_name> \
  --data '{"strategy":"use_main"}' \
  --access_token <token>
  • usare branch risolve i conflitti applicando le modifiche dal branch e, se non specificato, è l'impostazione predefinita.

  • usare main risolve i conflitti rifiutando le modifiche dal branch e fa riferimento al branch di base. Quando si lavora con branch sovrapposti, il branch di base non è necessariamente l'effettivo branch del progetto principale.

Unire branch

Dopo aver completato il lavoro di traduzione o specifico per la versione in un branch, eventuali modifiche possono essere unite nel branch di base. Una volta che tutte le modifiche sono state unite lungo la catena, il branch di primo livello può essere unito nel branch principale.

Dopo un'unione riuscita, il branch unito viene eliminato automaticamente e appare nella scheda Unire per il monitoraggio della cronologia.

Solo le modifiche alle seguenti risorse vengono applicate al branch di base durante le unioni:

  • Impostazioni locali

  • Chiavi

  • Traduzioni

Le modifiche ad altre risorse, come Attività, Lavori e Ordini, non vengono applicate.

I branch con branch (entità) subordinata attivi non possono essere uniti finché i branch (entità) subordinata non vengono prima eliminati o uniti.

Conflitti

Un conflitto si verifica quando una risorsa (traduzione, chiave o impostazioni locali) è stata modificata sia nel branch corrente che nel suo branch di base dopo che il branch è stato creato o sincronizzato l'ultima volta. I conflitti possono verificarsi a qualsiasi livello dello stack di branch, non solo durante l'unione nel branch principale.

Per unire un branch, seguire questi passaggi:

  1. Dalla scheda Branch di un progetto, fare clic su Unire con il branch di base accanto al branch desiderato.

    Si apre la pagina Unire. È possibile accedere alle informazioni sulle traduzioni da modificare durante l'unione facendo clic nelle celle.

  2. In caso di conflitti, selezionare una strategia di unione:

    • Selezionare Usare branch di base per rifiutare le modifiche in conflitto e conservare le traduzioni esistenti.

    • Selezionare Usare Branch Menu NomeBranch per Sostituisci le traduzioni esistenti con le modifiche dal branch.

  3. Fai clic su unire e confermare per applicare le modifiche.

    Il branch viene unito al branch di base ed eliminato automaticamente. Per rivedere la cronologia del branch unito, apri la scheda Unito nella pagina Branch.

Per unire un branch tramite API o CPI, esegui:

$ Phrase branches unire \\
  --project_id <project_id> \
  --name <nome> \\
  --data '{"strategy":"use_main"}' \
  --access_token <token>
  • usare branch risolve i conflitti applicando le modifiche dal branch e, se non specificato, è l'impostazione predefinita.

  • use_main risolve i conflitti rifiutando le modifiche dal branch. È supportato anche use_master.

L'azione unire elimina anche automaticamente il branch unito.

Push e pull

Quando si usa la CLI, specificare un branch da cui eseguire push o pull con il parametro --branch.

$ phrase push --branch <branch_name>
$ phrase pull --branch <nome_branch>

Se il branch specificato non esiste in un progetto, il cliente lo crea.

Usare --use-local-branch-name per eseguire push e pull usando il nome branch di un branch git attivo:

$ phrase push --use-local-branch-name
$ phrase pull --use-local-branch-name

API

Tutti gli endpoint API che richiedono un argomento progetto supportano anche il parametro --branch per eseguire un'azione su un ramo specifico di un progetto:

$ phrase upload Crea <ID_progetto> \\

  --branch <branch_name>

  --file /path/to/my/file.json \\

  --file-format json \\

  --locale-id abcd1234cdef1234abcd1234cdef1234 \\

  --tags awesome-feature,needs-proofreading \\

  --locale-mapping "{"en": "2"}" \\

  --format-options "{"foo": "bar"}" 
Questo articolo ti è stato utile?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.