如何把一个大文件拆分成两个并保留提交历史记录

分两种情况

  1. A->(A1, A2)
$ cp A A1
$ git add A1
$ git mv A A2
$ git status
...
#   renamed:    A -> A1
#   new file:   A2
...
$ git commit -m "your-comments-split" A A1 A2

$ edit A1
$ edit A2
$ git commit -m "your-comments-edit" A1 A2
  1. A->(A, A1)
$ cp A A1
$ git add A1
$ git commit -m "your-comments-split" A1

$ edit A
$ edit A1
$ git commit -m "your-comments-edit" A A1

然后你可以查看A/A1/A2的历史:

$ git log --oneline --follow A/A1/A2

需要注意的是git mv ...之后新文件并不能自动保留老文件的提交历史,必须使用--follow参数选项才能查看。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容