Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.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_Merge - Fatal编程技术网

拆分git存储库并在以后将其合并

拆分git存储库并在以后将其合并,git,merge,Git,Merge,此时,我的存储库有了1.0-版本。既然已经完成了,我想开始做1.1。每个版本都将在完成后推送到服务器。但是,当一个版本包含bug(例如拼写错误)时,可能是1.0.1。由于我已经开始使用1.1,我无法再编辑1.0 一种解决方案是复制存储库(这样您就得到了1.0和1.1),然后在1.0中复制一些小错误并推送该版本。但是,当我这样做并且想启动1.1时,它仍然会包含与1.0之前的1.0.1相同的错误 我正在寻找一种解决方案,在该解决方案中,我可以拆分(fork?)存储库,向其添加更改,并在准备就绪后,将

此时,我的存储库有了
1.0
-版本。既然已经完成了,我想开始做
1.1
。每个版本都将在完成后推送到服务器。但是,当一个版本包含bug(例如拼写错误)时,可能是
1.0.1
。由于我已经开始使用
1.1
,我无法再编辑
1.0

一种解决方案是复制存储库(这样您就得到了
1.0
1.1
),然后在
1.0
中复制一些小错误并推送该版本。但是,当我这样做并且想启动
1.1
时,它仍然会包含与
1.0
之前的
1.0.1
相同的错误

我正在寻找一种解决方案,在该解决方案中,我可以拆分(fork?)存储库,向其添加更改,并在准备就绪后,将其与主存储库再次合并:

   /------------------------- 1.1 ------------------------- \
  /                                                          \
 /          /------- 1.0.1 ---------\                         \
/          /                         \                         \
--------- 1.0 (main) -------- 1.0.1 (main) ---------------- 1.1 (main) -------
其中
1.1
还包含我在
1.0.1
中修复的错误

我希望这是可能的。如果是的话,你能给我完整的
git
-我需要使用的命令和术语/命名约定吗(这样当我遇到更多问题时,我知道在哪里搜索)


提前谢谢

您正在寻找的是分支机构


git分支是git存储库中的独立树。有关更多信息,请参阅文档:

阅读此文档。这正好说明了你想要实现的目标


现在,假设您知道在git中,分支是一个顶级的、频繁的操作。创建分支、将它们合并回其他分支、重命名它们、删除它们等等都很容易。

另一个很好的来源是本文“”(比当前的标准要简单。

Extract和git命令示例:

对于单个开发人员,您可以使用实验性代码路径:
您已经了解了功能应该如何实现,并希望开始使用。
但是您还需要同时进行一些常规开发(修复、其他功能等)。
因此创建一个分支并编码:

(在开发分支之外创建的功能分支)

如果功能代码有效,则将其合并回开发分支

(功能分支合并到开发分支)

如果没有,您只需返回到dev分支并删除feature\u x:

(左未合并的要素分支)

实际上,您真的不必删除分支。你可以保持原样,以防你想轻松地回去看看那份工作


非常感谢你。这些图片非常适合开始学习这个想法=)!我现在使用的是GUI(Gity),这样我就可以用名称和术语=)进行“练习”。非常感谢你!
$ git branch feature_x dev
$ git checkout feature_x
# add/commit... add/commit... add/commit
$ git checkout dev
$ git merge feature_x
$ git checkout dev
$ git branch -D feature_x