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

Git 用整个本地树替换主分支

Git 用整个本地树替换主分支,git,version-control,Git,Version Control,我需要结合两件事: 已有两年修订历史的git存储库。对于 我无法控制的复杂原因这一分支的部分是 过时的 包含最新“实时”代码的文件夹树 我想要的是新的本地代码成为主代码。所以如果一个文件 更改后,更改的版本将成为新的主版本。如果存在新的本地文件,则会将其添加到存储库中。如果文件不再是本地版本,则会将其从主文件中删除。不需要合并、解析或重定基址 我在这里寻找了最好的解决办法,但没有找到什么比这更好的 描述了这种情况。要么我找不到合适的关键词,要么就是没有人愚蠢到通过偶尔的推送来对其来源进行如此剧烈

我需要结合两件事:

  • 已有两年修订历史的git存储库。对于 我无法控制的复杂原因这一分支的部分是 过时的
  • 包含最新“实时”代码的文件夹树
  • 我想要的是新的本地代码成为主代码。所以如果一个文件 更改后,更改的版本将成为新的主版本。如果存在新的本地文件,则会将其添加到存储库中。如果文件不再是本地版本,则会将其从主文件中删除。不需要合并、解析或重定基址

    我在这里寻找了最好的解决办法,但没有找到什么比这更好的 描述了这种情况。要么我找不到合适的关键词,要么就是没有人愚蠢到通过偶尔的推送来对其来源进行如此剧烈的更改

    我认为最好的做法是:

  • 克隆主分支的最新版本
  • 删除我刚刚克隆的所有内容,除了.git和.git忽略 文件/文件夹
  • 把我的新代码放到那个文件夹里
  • 承诺并有力地推动一切
  • 但我想在继续做这件事之前再检查一下。我向GIT大师提出的问题是,这是否可行?还是有问题 那会回来缠着我吗?有更好或更简单的方法吗

    我有一个并发症,因为我有其他的分支,上面有活动的 发展。这些更改在某个时候必须合并回 大师。那一刻到来时,我能预料到一大堆问题吗

    非常感谢

    你的计划会奏效的。
    我看到的唯一问题是,何时合并其他一些分支,这些分支将修改您在主目录中删除的旧文件。对于这些冲突,您需要决定是使用分支版本还是删除它们。

    太好了!谢谢你的反馈!