git - 将我所有的提交从一个 repo 移动到另一个

标签 git

我与其他几位作者一起提交了几次公共(public)存储库。现在我想构建我自己的存储库,只有我自己 提交。我不太确定如何开始,因为我需要完整地保留原始历史记录。

最佳答案

这是一个非常不正统的问题。

这个公共(public)存储库是某种项目还是松散的不相关文件集?

如果文件不相关(我的意思是你没有在处理其他人的代码/文件)那么你可以使用 git filter-branch 的组合来过滤和收集你的提交git cherry-pick 后跟 git format-patch,稍后您可以将其应用到新的存储库之上。

大概是这样的:

  1. 例如使用 git log 找出您提交的哈希值。假设一次提交的 SHA 等于 b33787c
  2. Cherry pickgit cherry-pick b33787c
  3. 为此提交创建补丁:git format-patch -1 b33787c。这将创建您以后可以重用的 0001-COMMIT-NAME.patch

但是,如果您正在处理的文件属于一个有凝聚力的项目,我认为它无法以这种代码在此类操作后有用/功能的方式完成。

关于git - 将我所有的提交从一个 repo 移动到另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45258892/

相关文章:

mysql - Git Pre-Commit 钩子(Hook)在提交后添加文件

git - "You' 已成功验证,但 GitHub 不提供 shell 访问” 在运行完所有 ssh 设置步骤后

git - egg.el 已加载但 egg-minor-mode 未启用(无 "C-x v"键绑定(bind))

git - 在预推送中提交以更新版本

git - 类似 GNU screen 的 Git Bash 多 session 管理器

git - 如何重新开始跟踪从 git 索引中删除的目录/文件?

json - 什么是用于 Eclipse 的 Scala 2.8.1 JSON 序列化的好库

git - 如何在 TortoiseGit 中撤消 "Resolve"?

linux - 当我尝试添加一个文件名在 Windows 上无效的文件时,我可以让 git 警告我吗?

git 将分支内容复制到master