Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/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子树,或只向上游推送某些子文件夹的fork_Git_Github_Git Subtree - Fatal编程技术网

依赖于父目录的Git子树,或只向上游推送某些子文件夹的fork

依赖于父目录的Git子树,或只向上游推送某些子文件夹的fork,git,github,git-subtree,Git,Github,Git Subtree,在我的项目中,我想做的是创建一个我已经开发的现有“框架”存储库,并在forked repo中创建一个子文件夹来存储项目特定的文件(想想“引擎”和“游戏”)。我希望在处理此项目时保留在分支内对框架进行更改的能力,以便在分支被合并时不会自动影响主分支,但我不希望将项目子文件夹(或任何其他与项目相关的子文件夹,如果我想添加)推送到github上的主框架repo。我确实希望所有子文件夹(包括任何特定于项目的子文件夹)都被推送到项目repo,使所有内容都能很好地打包。有没有一种方法可以在不将框架强制放入子

在我的项目中,我想做的是创建一个我已经开发的现有“框架”存储库,并在forked repo中创建一个子文件夹来存储项目特定的文件(想想“引擎”和“游戏”)。我希望在处理此项目时保留在分支内对框架进行更改的能力,以便在分支被合并时不会自动影响主分支,但我不希望将项目子文件夹(或任何其他与项目相关的子文件夹,如果我想添加)推送到github上的主框架repo。我确实希望所有子文件夹(包括任何特定于项目的子文件夹)都被推送到项目repo,使所有内容都能很好地打包。有没有一种方法可以在不将框架强制放入子文件夹的情况下执行此操作?

分支,到处分支


在您的私有分支中处理您的子文件夹,让我们将其命名为“私有”。从master分支出一个名为“myfrm”的框架。将我的frm合并到两个主机(并使用它进行拉取请求),同时将其合并到您的私人分支。

非常感谢您的回答,但只是想看看我是否收到了它。。。1.分叉“main”并克隆它。。。让我们把fork称为“框架游戏”2。在框架游戏中,创建一个称为游戏的分支和一个称为框架的分支。3.当我对框架文件进行更改时,只将它们提交到框架分支(在签出框架之前,隐藏/提交任何并行的游戏更改)。4.将更改合并回游戏分支。5.公关框架游戏“主要”是一个好主意,合并到掌握前,使PRs?很愚蠢,所以。。。markdown在此评论中不起作用:/Where you merge由您决定。这只取决于您需要更改的位置(在哪些分支中)。如果您需要将它们分为两个或三个分支,则可以合并2或3次。注:注释用于快速注释,所以它们故意只支持非常有限的降价子集。所以,多亏了你,我才对Git了解了很多。例如,我没有意识到你可以在同一个回购协议中拥有一个私有分支,并将其推送到不同的远程或不同的本地回购协议,其中包含来自相同或不同来源的分支子集(这将允许游戏项目拥有多个相关分支,而不会使主分支过度拥挤)结果证明,这种方法并不理想;我经常在项目中对框架进行更改,以便它们可以在现场进行测试,然后我必须通过隐藏、切换分支、应用隐藏和放弃任何非框架更改、提交,然后以这种或那种方式合并(以掌握、到项目等)来“梳理”事物或者我只是对项目进行所有的提交,然后cherrypick将它们放到框架中,但这很容易出错,并且会扰乱历史。由于这个原因,我正在考虑采用子模块,因为Gitkraken支持它们。有什么见解吗?