如何将主分支历史重写到其他Repository主分支

时间:2017-09-25 14:39:33

标签: git git-commit git-history-graph

是否有任何方法或任何工具或命令可以将$logDateList = @(Get-Date -Year 2017 -Month 08 -Day 22 -Hour 13 ,Get-Date -Year 2017 -Month 08 -Day 20 -Hour 22) 或某些master分支 的历史记录从某个提交号 重新写入 NEW REPOSITORY 的新创建的A分支,master分支,0提交或没有历史记录。

以这样的方式:

  1. 提交号码前的所有先前提交" 45678"应该在新的存储库主分支中重写为单个提交
  2. 重写历史记录应从commit" 45678"
  3. 开始

    由于

1 个答案:

答案 0 :(得分:0)

(我没有合适的牺牲品库来测试这个:你已经被警告了。)

我认为merge --squash可以做到这一点。

  • 将新存储库添加为远程
  • 创建目标分支,将带有上游跟踪的分支推送到新存储库
  • 结帐新分行
  • 来自您的来源分支的
  • Merge --squash
  • 提交
  • 推送到新存储库

(也见this answer。)

旧内容(在编辑问题之前)

只需将新存储库创建为原始存储库克隆上的新远程数据库;然后推送到新的存储库。

git remote add newrep url-to-new-repository
git push -u newrep master

对要推送的每个分支重复上一个命令。