git - 从现有的本地分支创建新的 git 存储库

标签 git branch

我有一个包含两个分支的 Git 存储库:masterredesignredesign 分支是从 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/

相关文章:

java - Android balanced-api导入错误

Git 自动补全 : syntax error near unexpected token `newline'

使用子模块将 Git 推送到 azure 网站

git - git clean 和 system rm 的区别

git - 尝试执行 git-commit 或 git-status 时如何修复 'bus error'

label - 在P4V中,如何从标签创建分支?

git - 恢复分支看起来像主人?

git - 警告 : refname 'xxx' is ambiguous when using git-svn

git - 使用 GitFlow 管理 Git 中的远程分支

git - 如何管理两个链接的 GitHub 存储库