我曾经有一个存储库:
my-project/
app/
common/
logger.js
foo/
bar/
index.js
位于logger.js
的{{1}}文件曾位于my-project/app/common
。它已随my-project/app
移动。命令git mv
仅返回历史记录,因为它已被移动,链接到其先前位置的所有历史记录都已丢失。但是,可以使用git log -- app/common/logger.js
我已将此回购拆分为4:
git log --follow -- app/common/logger.js
:包含my-project-common
my-project/app/common
:包含my-project-foo
my-project/app/foo
:包含my-project-bar
my-project/app/bar
:包含my-project
我用my-project/app/index.js
实现了这个目标并且有效。
问题:将git filter-branch
移至my-project/app/common
时,my-project-common/
的历史记录仅包含与其先前位置相关联的历史记录(即logger.js
})。即使使用my-project/app/common
,也无法访问与位置my-project/app
关联的历史记录。
问题:如何保留--follow
的完整历史记录?
答案 0 :(得分:0)
没有其他方法可以查看p.props
标记旁边的历史记录。
我能想到的唯一另一种方法是将仓库拆分为4个不同的存储库,然后再将它们合并。
另一种方法是将存储库拆分为单独的存储库并将该解析用作子模块。与以前一样,此解决方案需要拆分回购。
--follow
强> 查看已删除文件的完整历史记录的唯一方法是使用Summary
。
另一种方法是将存储库拆分为不同的存储库,并将每个部分用作单独的存储库,或者将它们组合回原始存储库。
git log --follow
强> 阅读此答案以获取完整描述 make new git branch containing full history of only some files