Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.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_Version Control_Merge - Fatal编程技术网

创建一个";“基础”;上一个分支的git分支

创建一个";“基础”;上一个分支的git分支,git,version-control,merge,Git,Version Control,Merge,目前,我有一个专门为某个特定版本设计的软件(我们称之为a版) 现在,需要不同的版本,我想用不同的GIT分支来表示这一点,其中对基本分支的更改可以合并到不同的专门分支中。结果应该如下所示 |version A-------|------ base-------|----------------| |version B-------|----- 但是,要从版本A创建此基本分支,必须删除各种文件。与基本分支合并后,这些更改也将应用于版本a分支,因此此版本将

目前,我有一个专门为某个特定版本设计的软件(我们称之为a版)

现在,需要不同的版本,我想用不同的GIT分支来表示这一点,其中对基本分支的更改可以合并到不同的专门分支中。结果应该如下所示

           |version A-------|------
base-------|----------------|
           |version B-------|-----
但是,要从版本A创建此基本分支,必须删除各种文件。与基本分支合并后,这些更改也将应用于版本a分支,因此此版本将不可用。我设法忽略了使用交互式重基删除文件的提交,但在下一次合并时,这些删除的提交将再次应用。因此,每次与基础版本合并时,我都必须进行交互式重基


对于版本A分支,是否没有好的方法永久忽略这些提交,这样仍然允许我将将来的提交合并到版本A分支中的基础分支?

您应该能够执行以下操作:

git checkout A
git merge -s ours base

从基本文件到
A
的任何后续合并都不应考虑已删除的文件,因为这些删除应该已被合并(除了
-s我们的
合并策略将忽略它们,这是目标)

谢谢。这正是我一直在寻找的。