Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git:为派生产品使用分支_Git_Git Branch_Git Merge_Git Rebase - Fatal编程技术网

Git:为派生产品使用分支

Git:为派生产品使用分支,git,git-branch,git-merge,git-rebase,Git,Git Branch,Git Merge,Git Rebase,我在谷歌上搜索,找不到类似的情况,所以我的情况如下: 我有一个演示应用程序(Android应用程序)。然后,客户希望该应用程序的基础相同,但需要做一些小的更改(更改名称、图标、颜色等)。 将来,可能需要应用特定的客户更改 然后我有另一个客户,同样的事情发生了 因此,我: git checkout -b customer_1 git checkout -b customer_2 做些改变。。。 然后我将在演示应用程序中进行一些错误解决,或者在那里添加一些功能。这些需要集成到客户的版本中 目前,我

我在谷歌上搜索,找不到类似的情况,所以我的情况如下:

我有一个演示应用程序(Android应用程序)。然后,客户希望该应用程序的基础相同,但需要做一些小的更改(更改名称、图标、颜色等)。 将来,可能需要应用特定的客户更改

然后我有另一个客户,同样的事情发生了

因此,我:

git checkout -b customer_1
git checkout -b customer_2
做些改变。。。 然后我将在演示应用程序中进行一些错误解决,或者在那里添加一些功能。这些需要集成到客户的版本中

目前,我将这些合并到那里,因为我对如何做这件事缺乏想法

我在谷歌上搜索了一下,发现了一些关于
rebase
,但我仍然不完全明白什么时候使用vs
merge

我从今天开始就有这种情况,希望从一开始就有一个正确的工作方式。我当时做了一次合并,但感觉不对


Git专家,你有什么建议吗?

我建议你看看这本关于Git的教程,我很确定它会帮助你找到解决方案的答案:


希望这能对您有所帮助。

有一个关于合并与重新基础的合理描述。一般来说,您不会希望对分支执行此操作,因为它会变得非常混乱。我将研究条件编译。看起来它们只显示将存在很短时间的功能分支。我的枝条将永远长存。条件编译不是我想要的。我的代码将变得杂乱无章,我需要为每个代码使用不同的包名。它们是一个真正独立的产品,有一个公共的基础实现,并且具有长期存在的分支,customer_1和customer_2的代码最终会彼此分离,以至于合并将成为一个巨大的难题。我理解你想做什么,我不认为把代码放在不同的分支上会给你带来你希望的结果。但我不希望在一个项目中有条件的东西,从中生成x个不同的应用程序。这也不像是一件可维护的事情。但我没有发现任何其他人面临同样问题的例子。您可能还想看看programmers.SE,特别是problem。听起来像你在问的。谢谢,我会看一看的!我希望它能回答我的问题:用派生的、独立的产品实现一个基本实现。通过本教程,您将对管理项目可用的工具有一个很好的概述。这个互动教程的优点是它专注于git特性,我将在工作日用它来练习git。谢谢。棒极了的教程,有人在这里真的很努力!我希望它能给我灵感,让我找到解决办法