据我所知,git pull someRemote master试图将远程分支合并到我的.
有没有办法说"完全丢弃我的东西,只需使用git pull让我另一个克隆遥控器"?我仍然希望保留自己的存储库并保留它的历史记录,但我想在该命令之后获得someRemote主分支的1:1副本.
为了澄清,想象有2个存储库,RM和MY.数字是提交,这假定只有一个分支(主).
RM1 --- RM2 --- RM3 --- RM4 --- RM5 --- RM6 ... | | +-> MY1 --- MY2 --- MY3 -+-> MY4 --- MY5 --- MY6 ...
所以我开始自己的存储库作为RM1的克隆.然后我愉快地发展,RM愉快地发展,但我们从不分享我们的工作.在MY3之后,我意识到我的分支并不是那么好,但RM4非常好.所以我想把git pullRM4变成MY.但是,我不希望MY1-3中的更改持续存在,我希望MY4是RM4的1:1副本.
但是,我想保留我的历史,理想情况下我希望在MY3和RM4之间或在MY3和RM2-4之间进行更改.
它应该仍然保留我的存储库.
那可能吗?
(这适用于GitHub项目,我可以在这些项目中进行项目分析,稍微试验一下,不管它几个星期但是然后想要更新它而不保留我的更改.目前我删除了我的分叉并重新分叉,这不是'最好的方法.)
“ Git Pull Force ”、“ git重置分支到原点”或者换句话说,拉出远程分支来覆盖本地分支,似乎是被广泛搜索的功能,尽管本地很少有下降,但人们对它的兴趣却越来越大。
\n对于不断壮大的团队和不断增加的开发人员数量来说,这绝对有意义。
\n\n目前,最短的工作解决方案非常冗长并且需要分支知识
\ngit reset --hard origin/<branch_name>\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n
不幸的是,因为输入以下内容要快得多
\ngit pull\nRun Code Online (Sandbox Code Playgroud)\n然而,这也带来了其自身的挑战。历史分歧、合并冲突等等……
\n我们确实有这样的简写
\ngit push origin HEAD -u --force\nRun Code Online (Sandbox Code Playgroud)\n它将本地分支推<branch_name>送到原点,覆盖同名的远程分支<branch_name>并将其设置为自己的上游分支。
然而,没有这样的--force/ reset\xc2\xa0 替代git pull。
将此功能添加到git 的最佳方式是什么?
\n