我有两个git存储库:repo1和repo2。 repo1包含文件夹“dir_a”,“dir_b”等。如何将包括git历史的所有文件从repo1的dir_a和dir_b传输到repo2?
我找到了一些有用的文章来完成这样的任务:http://gbayer.com/development/moving-files-from-one-git-repository-to-another-preserving-history。但是,它并不完全适合我,因为我需要传输2个目录。
答案 0 :(得分:1)
如何将包含git历史记录的所有文件从repo1的dir_a和dir_b传输到repo2?
您可以使用git filter-branch
和/或git subtree split
filter-branch
强> # Filter the master branch to your directory and remove empty commits
git filter-branch --prune-empty --subdirectory-filter YOUR_FOLDER_NAME filter_from_branch
这将检出从给定文件夹到当前目录的所有所需文件
subtree split
强> <强>
git subtree
强>git-subtree
-Merge
将子树或split
存储在子树中
git subtree split -P <name-of-folder> -b <name-of-new-branch>