挑选特定文件的所有提交历史记录
Cherry-picking all commit history of a particular file
假设我想挑选一个回购的特定文件的完整提交历史,但回购有多个文件并且提交甚至没有,即第一次提交是我想要挑选的特定文件第二和第三是其他文件,第四是特定文件等等..
在这种情况下,我如何才能在该特定文件的一次拍摄中挑选所有提交,不包括对其他文件完成的提交..
我知道,
$ git cherry-pick abc^..xyz
上面的命令不会工作,因为它会挑选我也想排除的其他提交..
所以我的问题是,有什么方法可以在一条命令中完成我的要求吗??
您还需要提交历史记录吗?
一个选项是
git show <treeish>:<file>
然后提交文件,虽然它有效地"squashes"提交
你也可以用这个
How to cherry pick only changes for only one file, not the whole commit
git diff <branch>^..<branch> -- <filename> | git apply
假设我想挑选一个回购的特定文件的完整提交历史,但回购有多个文件并且提交甚至没有,即第一次提交是我想要挑选的特定文件第二和第三是其他文件,第四是特定文件等等..
在这种情况下,我如何才能在该特定文件的一次拍摄中挑选所有提交,不包括对其他文件完成的提交..
我知道,
$ git cherry-pick abc^..xyz
上面的命令不会工作,因为它会挑选我也想排除的其他提交..
所以我的问题是,有什么方法可以在一条命令中完成我的要求吗??
您还需要提交历史记录吗?
一个选项是
git show <treeish>:<file>
然后提交文件,虽然它有效地"squashes"提交
你也可以用这个
How to cherry pick only changes for only one file, not the whole commit
git diff <branch>^..<branch> -- <filename> | git apply