如何将git历史从一个分支连接到另一个分支?

时间:2018-06-07 20:42:17

标签: git github

我搞砸了。

当我创建一个新分支时,我故意删除了所有内容(包括.git文件夹)。这是故意的,我想在不同的框架中重写我的项目,并且不需要原始代码(删除.git不是故意的)。

现在,当我将新分支的PR提交给master时,GitHub会显示以下消息:

  

没有什么可比较的。

     

master new_branch 是完全不同的提交历史记录。

有道理,因为我删除了.git

更重要的是,如果我在git lognew_branch,那么当我重新启动项目时,历史就开始了,而不是在我最初创建存储库的时候。

我有没有办法将master分支的git历史记录连接到new_branch的开头?

1 个答案:

答案 0 :(得分:0)

试试这个:

  1. 从现有主分支在本地存储库中创建另一个新分支:

    git checkout master && git branch new_new_branch
    
  2. 切换到刚刚创建的新分支,并将 new_branch 合并到其中:

    git checkout new_new_branch && git merge --allow-unrelated-histories new_branch
    
  3. new_new_branch 现在应该包含 master 的完整历史记录,后跟 new_branch 的历史记录。它的头部提交/状态应该与 new_branch 的相同。 GitHub应该允许您将 new_new_branch 的PR提交回另一个存储库中的 master