如何使两个分支保持同步,但保持一些单独的代码不同?

时间:2019-10-29 07:02:17

标签: git

例如,我有两个分支:masterclient

它们都有一个main.c文件,但只有一行不同:

master:main.c:

char *private = 'main';
int main() {
/*
...
*/
}

client:main.c:

char *private = 'client';
int main() {
/*
...
*/
}

client分支需要与master保持同步,但char *private行应保持不变。

如何执行此操作?

这是一个简化的示例,实际上,我还有其他一些不同的代码

1 个答案:

答案 0 :(得分:1)

做到这一点的最好方法是将其中一个分支(例如master)保留为基础分支,并定期用它重新建立另一个分支的基础。

____master
         |
         |____client

main.c中发生更改时,请在master中对其进行更新,然后使用新的clientmaster重新设置为基础:

$ git checkout client
$ git rebase master