GIT:更新到特定版本

Pav*_*l P 5 git

我在8个月前检查了一个项目副本,在那里做了很多改动.现在,我想采取过去8个月的所有新变化.变化的数量是压倒性的(成千上万的提交).我想做的是一次更改1个月,与我的版本合并,测试.如果我拉最新的变化/冲突的数量是压倒性的.

所以......我想我很清楚我正在尝试做什么,但我不知道如何用GIT做这件事(我对svn比较熟悉).我在Windows上使用TortoiseGit.我在本地分支机构所做的所有本地更改,我需要做些什么才能完成自签出后所做的更改,但不是全部更改?

谢谢

Kar*_*ldt 6

A pull只是一个fetch加号的组合merge.所以做一个fetch将所有远程更改下载到本地仓库,然后git log master..origin/master获取origin自分支分散后所做的所有提交的列表,然后选择任何一个月左右的SHA1并将git merge SHA1其拉入您的master分支.泡沫,冲洗,重复.

如果有在你身边少的变化,它可能更容易做了git checkout -b upstream origin/master,git log upstream..master和合并在一个时间超过一个月的变化.

不过,我不知道将它拆分是否最终会减少工作量.如果你将它们合并在一个块中,那么你并没有真正合并10,000个提交,你正在合并分支的提示,这意味着所有这些提交基本上被压缩成一个大块.