Gestione della traduzione

branching (Strings)

Contenuti tradotti automaticamente dall'inglese con Phrase Language AI.

Disponibile per

  • Piani Business ed Enterprise

Mettiti in contatto con il reparto vendite per dubbi relativi alle licenze.

Disponibile per

  • Piano Enterprise (legacy)

Mettiti in contatto con il reparto vendite per dubbi relativi alle licenze.

Importante

A partire dal 10 dicembre 2025 il nuovo branching è abilitato per impostazione predefinita per tutti i nuovi clienti.

I clienti esistenti possono scegliere di utilizzare il nuovo modello di branching selezionando Switch to new branching nella scheda Branches di un progetto.

Il branching legacy sarà deprecato a partire dal 1 giugno 2026.

Il branching viene utilizzato nel controllo della versione del software. Le copie dei file di progetto chiamate branch consentono ai team di lavoro su versioni parallele del progetto contemporaneamente, mantenendo una copia non modificata. Ciò elimina il rischio di sovrascrivere accidentalmente le modifiche apportate da 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 Merged 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 Branches.

  • Le unioni non possono essere annullate e i branch non possono essere ripristinati dopo l'eliminazione.

  • 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 Reports riflettono solo lo stato del branch attivo. L'unione di un branch nel progetto principale aggiorna i report del progetto principale.

  • La vista Activity contiene solo 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 Comments fatti in un branch non sono visibili nel progetto principale e viceversa.

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

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

Abilitare Branching

Branching è abilitato nella scheda Advanced di impostazioni progetto con l'opzione di proteggere il branch principale dalle modifiche.

Quando abilitato, un menu branch Branch Menu viene presentato nella schermata progetto dove è possibile selezionare i branch di lavoro. Per specificare un branch in CLI, usare il parametro --branch:

--branch <branch_name>

I branch sono elencati nella scheda Branches di un progetto, dove vengono presentate le informazioni su creazione e merging. I branch possono anche essere eliminati o uniti e i lavori creati per quel branch dalla scheda Branches.

Consiglio

Fare clic su Switch to new branching nella scheda Branches per accedere alla nuova interfaccia e alle funzionalità di branching.

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

$ phrase branches list --project_id <project_id>

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

Per eliminare un branch tramite API o CLI, esegui:

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

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

creare un branch (legacy)

I ruoli amministratore, project manager e sviluppatore possono creare nuovi branch nell'editor di traduzione, tramite API o nella CLI.

Per creare un branch nell'editor di traduzione, segui questi passaggi:

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

  2. Fai clic su Crea branch.

    Si apre la finestra Crea branch.

  3. Fornisci un nome per il branch.

  4. Fai clic su Crea branch.

    Il nuovo branch viene aggiunto all'elenco.

Per creare un branch tramite API o CLI, esegui:

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

Per creare un branch durante il push delle Phrase, esegui:

$ phrase push --branch <branch_name>

unire branch (legacy)

Dopo aver apportato modifiche a un branch, è possibile unirlo nuovamente alla Phrase principale per incorporare eventuali nuove Phrase.

Durante l'unione, al branch principale vengono applicate solo le modifiche alle seguenti risorse:

  • Impostazioni locali

  • Chiavi

  • Traduzioni

Le modifiche ad altre risorse, come attività, lavori e ordine, non vengono applicate.

Conflitti

Un conflitto si verifica quando una risorsa (traduzione, chiave o impostazioni locali) è stata modificata sia nel progetto principale che nel branch tra il momento in cui un branch viene creato e quello in cui viene unire al progetto principale. Ad esempio, le traduzioni e le impostazioni chiave (come le forme plurali) potrebbero essere cambiate nel progetto principale dopo la creazione di un branch, rendendo i valori nel branch diversi da quelli nel progetto principale.

Per unire un branch, seguire questi passaggi:

  1. Dalla vista Branches di un progetto, Seleziona un branch per unire e fare clic su Compare and Merge.

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

  2. Se ci sono conflitti, selezionare una strategia di unire:

    • Selezionare Use Main Project per rifiutare le modifiche in conflitto e preservare le traduzioni esistenti.

    • Selezionare Use Branch Menu BranchName per Sostituisci le traduzioni esistenti con le modifiche dal branch.

  3. Fare clic su Merge Branch.

    Il branch viene unire al progetto principale.

Per unire un branch tramite API o CPI, eseguire:

$ phrase branches merge \\
  --project_id <project_id> \
  --name <name> \\
  --data '{\"strategy\":\"use_main\"}' \\
  --access_token <token>
  • use_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. use_master è anch'esso supportato.

Push e Pull (Legacy)

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 <branch_name>

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 (legacy)

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 <project_id> \\

  --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"}" 

Nuovo branching

Disponibile per

  • Piani Business ed Enterprise

Contatta ilreparto vendite per dubbi relativi alle licenze.

La nuova esperienza di branching introduce un'architettura riprogettata per migliorare prestazioni, stabilità e flessibilità, oltre a funzionalità di controllo versione ampliate. Consente ai team di lavorare su più versioni del loro contenuto in parallelo, mantenere aggiornati i branch a lunga durata e unire le modifiche in modo più efficiente.

Le nuove funzionalità includono:

  • Branch multilivello (impilati)

    I branch possono essere creati da qualsiasi altro branch, non solo dal branch principale. Sono supportati fino a 5 livelli di branch.

  • Sincronizzazione delle modifiche tra i branch

    I branch a lunga durata possono diventare obsoleti man mano che le modifiche si accumulano nei loro branch di base. Il nuovo branching introduce una funzionalità di sincronizzazione che aiuta a prevenire le incoerenze.

I branch che rimangono non uniti per più di 30 giorni dalla loro creazione contano ai fini delle managed words di Strings.

creare un branch

I ruoli amministratore, project manager, Designer e Developer possono creare nuovi branch nella scheda branch, tramite API o nella CLI.

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

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

  2. Fai clic su Crea branch.

    Si apre la finestra Crea branch.

  3. Fornisci un nome per il branch.

  4. selezionare un Base branch dall'elenco dei branch esistenti.

  5. Fare clic su Crea.

    Il nuovo branch viene aggiunto all'elenco.

Per creare un branch tramite API o CLI, esegui:

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

Per creare un branch durante il push delle Phrase, esegui:

$ phrase push --branch <branch_name>

Sincronizza branch

La sincronizzazione garantisce 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 Sync with base branch accanto al branch desiderato.

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

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

    Viene visualizzata una tabella con i dettagli sulla modifica selezionata.

  3. selezionare Sync 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 Synced 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>
  • use_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 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'operazione di unire 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 operazioni di unire:

  • Impostazioni locali

  • Chiavi

  • Traduzioni

Le modifiche ad altre risorse, come attività, lavori e ordine, non vengono applicate.

I branch con branch (entità) subordinata attivo 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) è cambiata 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 quando si esegue unire nel 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'unire facendo clic nelle celle.

  2. Se ci sono conflitti, selezionare una strategia di unire:

    • Selezionare usare branch di base per rifiutare le modifiche in conflitto e preservare le traduzioni esistenti.

    • Selezionare Use Branch Menu BranchName per Sostituisci le traduzioni esistenti con le modifiche dal branch.

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

    Il branch viene unito al branch di base ed eliminato automaticamente. Per rivedere la cronologia dei branch uniti, aprire la scheda unire nella pagina branch.

Per unire un branch tramite API o CPI, eseguire:

$ phrase branches merge \\
  --project_id <project_id> \
  --name <name> \\
  --data '{\"strategy\":\"use_main\"}' \\
  --access_token <token>
  • use_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. use_master è anch'esso supportato.

L'azione unire elimina anche il branch unito automaticamente.

Push e Pull (Legacy)

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 <branch_name>

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 (legacy)

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 <project_id> \\

  --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.