如何从 git 日期限制的另一个分支获取更改
How to get changes from another branch limiting by date on git
我有一个名为“hugefeature”的分支,它是在 1 月份从“master”分支出来的。
人们整年都在这个“巨大的”分支上工作,也在“大师”上工作。
但是从七月开始,在这个分支上所做的所有更改都不重要了。事实上,这种变化打破了以前的工作。软件在 7 月之前运行良好,之后就不再运行了。
所以我想要的是:
- 再次分叉“master”并创建一个“hugefeature2”新分支。
- 将“hugefeature”合并到“hugefeature2”,但仅获取在“hugefeature”7 月之前所做的更改。
因为“master”有变化,所以会有一些冲突。不过没关系,我可以解决。
有人可以帮忙吗?我不知道如何限制提交日期。
git log
有一个 --until=<date>, --before=<date>
option,您可以使用它来发现您感兴趣的提交 ID:
git log --oneline --graph --until=2020-07-01 hugefeature
如果您发现了您感兴趣的提交 ID,您可以使用它来创建一个新分支:
git checkout -b hugefeature2 <commitID>
或直接在合并命令中使用此 ID :
# fork from master :
git checkout -b hugefeature2 master
# merge commits up to july :
git merge <commitID>
我有一个名为“hugefeature”的分支,它是在 1 月份从“master”分支出来的。
人们整年都在这个“巨大的”分支上工作,也在“大师”上工作。
但是从七月开始,在这个分支上所做的所有更改都不重要了。事实上,这种变化打破了以前的工作。软件在 7 月之前运行良好,之后就不再运行了。
所以我想要的是:
- 再次分叉“master”并创建一个“hugefeature2”新分支。
- 将“hugefeature”合并到“hugefeature2”,但仅获取在“hugefeature”7 月之前所做的更改。
因为“master”有变化,所以会有一些冲突。不过没关系,我可以解决。
有人可以帮忙吗?我不知道如何限制提交日期。
git log
有一个 --until=<date>, --before=<date>
option,您可以使用它来发现您感兴趣的提交 ID:
git log --oneline --graph --until=2020-07-01 hugefeature
如果您发现了您感兴趣的提交 ID,您可以使用它来创建一个新分支:
git checkout -b hugefeature2 <commitID>
或直接在合并命令中使用此 ID :
# fork from master :
git checkout -b hugefeature2 master
# merge commits up to july :
git merge <commitID>