代码之家  ›  专栏  ›  技术社区  ›  Erik Allen

如何使用git处理具有两个不同源的文件

  •  0
  • Erik Allen  · 技术社区  · 5 年前

    我有一个由两部分组成的软件项目。在第一部分中,我正在将一些古老的文件从waterloo脚本转换为xml。第二部分是将xml转换成SQL命令,我可以使用这些命令创建一个数据库来运行网站。

    我编写了一个解析器,它接受旧文件并创建了一个“ent.xml文件“基本正确的文件。它看起来不错,但它更好地工作后,我做了一些手动编辑。此外,我还添加了完成项目所需的更新信息。

    但是,我偶尔会发现我的解析有错误,我需要修复解析器并重新创建“ent.xml文件". 但这通常会与我在同一个文件上所做的手动编辑产生冲突。

    我想使用git来处理这些冲突。它有一个很好的冲突管理系统,我觉得我可以用它来融合变化,让双方都高兴。

    接下来的问题是如何处理下一个解析器错误?合并之后,“parser”分支实际上应该与“master”分支相同。不是吗?基本上我想两个不同的来源都编辑同一个文件在一个持续的基础上。

    我可以用未编辑的“parser”分支继续对其进行更改吗ent.xml文件并将其多次合并到“主”分支中?还是有更好的方法来做我想做的事?

    0 回复  |  直到 5 年前
        1
  •  0
  •   mfnx    5 年前

    不管怎样, git 恐怕不打算这样用。从长远来看,最好的解决方案是编写一些代码来合并输入文件。

    不管怎样,这里有一个可能 解决方案。我知道你想保持你的分支与手册和解析器编辑分开。

    您可以创建3个分支:

    parser # here you will update your parser edits
    manual # here you will update your manual edits
    result (or maybe master) # you can merge both parser and manual in here
    

    parser manual 分支,如果需要,将结果合并到 result master .