在保持干净的git怪历史的同时,搅拌其他分支的其他提交很简单。
[如果我正在UserA
上从事branch-A
的工作,然后我在实验branch-B
中知道,UserB
和UserC
在FunctionC
上的数百次提交过程中一直被黑客窃取,想要引入。提交的方式太多了,所有那些提交可能还有其他我不想引入的更改。
我能以保留其中历史记录的方式引入FunctionC
的最惯用的方法是什么?
我已经搜索了很长时间,但是在某些提交中我想要的更改没有完全可用的情况下,似乎没有办法。所有其他方法似乎都无法追溯历史。同时,我基本上只是通过git checkout --patch branch-B
进行了复制/粘贴,但是除了UserA之外,它没有任何涉及其中的活动,也没有任何人来检查git的责任。
我可以用保留保留其中历史记录的方式引入FunctionC的最惯用的方法是什么?
Git中只有一个历史渊源。在Git中,历史就是提交。提交历史记录。这就是全部。如果您询问 file 请注意,您可以根据需要使用git blame
不会看它们。git replace
来伪造历史记录。您可能可以获取所需的功能,然后使用git replace
进行伪合并,以便git blame
可以返回到真正的父级以及从中获取文件的提交。但是有很多关于替换提交的警告。好处是您可以删除替换项。最大的缺点是默认情况下未克隆它们。