处理合并冲突

如何预防和解决合并冲突

简介

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
    

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