我有一个包含两个分支的 Git 存储库:master
和 redesign
。 redesign
分支是从 master
创建的,master
从那时起就没有被触及过:
master
...|--m50--\
\--m51--|--m52--|--m53-- redesign
redesign
分支已经发展得如此之多,以至于我想从中创建一个新的整个存储库,将 redesign
的第一次提交作为新的初始提交存储库并忘记从 master
继承的以前的历史:
master
...|--m50--
redesign
--r1--|--r2--|--r3--
这可以用 Git 实现吗?有一个 related question对此,但它的目标是使用目录,而不是分支。
谢谢!
最佳答案
你可以:
- 检查你想要的新仓库“root”的提交
- 将所有文件复制到新目录(
.git
目录除外) - 检查您的
重新设计
分支 git format-patch master..redesign
- 将所有生成的补丁文件移动到方便的地方
然后转到您的新目录并:
$ git init
$ git add . # make sure your .gitignore is in place though
$ git commit -m"..."
$ git am /path/to/patches/*.patch
关于git - 从现有的本地分支创建新的 git 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8287480/