处理合并冲突

如何预防和解决合并冲突

介绍

i18n.lock 文件在分支之间存在差异时,可能会发生合并冲突。这通常发生在不同分支中独立更新翻译时。

本页面提供了一些防止和解决合并冲突的选项。

选项 1:直接将翻译提交到 main 分支

一种可用的工作流程是在更改合并到 main 分支时生成翻译,并将这些更改自动直接提交回该分支。此工作流程可以防止合并冲突,因为根本没有发生合并。

要了解更多信息,请参阅 选择工作流程

选项 2:通过重新生成锁文件进行合并

在合并具有冲突的 i18n.lock 文件的分支时,可以通过删除锁文件并在合并完成后重新生成它来解决冲突。

  1. 开始合并:

    git merge <branch-name>
    
  2. 删除冲突文件:

    rm i18n.lock
    
  3. 暂存更改:

    git add .
    
  4. 完成合并:

    git merge --continue
    
  5. 重新生成 i18n.lock 文件:

    npx lingo.dev lockfile --force
    

    注意: 此命令不会触发内容的翻译。

选项 3:通过重新生成锁文件进行变基

与合并类似,在变基具有冲突的 i18n.lock 文件的分支时,可以通过删除并重新生成锁文件来解决冲突。

  1. 开始变基:

    git rebase <branch-name>
    
  2. 删除冲突文件:

    rm i18n.lock
    
  3. 暂存更改:

    git add .
    
  4. 继续变基:

    git rebase --continue
    
  5. 重新生成 i18n.lock 文件:

    npx lingo.dev lockfile --force
    

    注意: 此命令不会触发内容的翻译。