[英](Git) Push a previous commit to a new repository without losing current changes
[英]New Git branch without changes from a previous commit
我当前的分支看起来像:
D
/
H--A--B--C
我试图弄清楚如何产生一个新的git分支,它将使新的git repo看起来像:
D
/
H--A--B--C
\
C
这可能吗? 我曾考虑过使用reset,但这意味着C语言的更改也将丢失,因此正在寻找替代方案。
好的,所以找到了一种方法来做到这一点。
我用A创建了一个新分支:
git branch new-branch <A sha1>
然后,我在新分支中使用了樱桃选择将C与A合并:
git checkout new-branch
git cherry-pick <C sha1>
这就使仓库与我需要的分支成为一体。
C A--D
/ /
A*--D H--A--B--C
/ \
H--A--B--C A--C
(1) (2)
因为(1)
与(2)
等价,所以您可以git checkout <commit sha1 of A*> -b your-new-branch
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.