Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git还原对撤消合并的影响&;删除的分支_Git_Version Control_Git Revert - Fatal编程技术网

Git还原对撤消合并的影响&;删除的分支

Git还原对撤消合并的影响&;删除的分支,git,version-control,git-revert,Git,Version Control,Git Revert,如果我将分支与master分支与普通合并&非快进合并合并。然后我删除了合并的分支。在稍后的阶段,我希望在合并两个分支之前,将还原为提交。如果没有冲突,git会让我做吗。如果是,那么它会带回已删除的分支吗 如果您询问在删除分支后是否会重新创建分支(如修订指针),答案是否。但我说的是指针。所以只是为了让事情清楚。让我们假设您合并的分支名为foo。合并后,您完成了:git branch-d foo。现在分支foo(指针)消失了,但它所指向的修订根本没有被删除(实际上,它现在是分支的一部分)。因此,如果

如果我将分支与
master
分支与普通合并&非快进合并合并。然后我删除了合并的分支。在稍后的阶段,我希望在合并两个分支之前,将
还原为提交。如果没有冲突,git会让我做吗。如果是,那么它会带回已删除的分支吗

如果您询问在删除分支后是否会重新创建分支(如修订指针),答案是。但我说的是指针。所以只是为了让事情清楚。让我们假设您合并的分支名为foo。合并后,您完成了:git branch-d foo。现在分支foo(指针)消失了,但它所指向的修订根本没有被删除(实际上,它现在是分支的一部分)。因此,如果您现在开始恢复到合并之前的某个点,您将不会看到名为foo的分支死而复生。

简短的回答是否,它不会恢复已删除的分支。问题是,恢复实际上不会像开始恢复之前那样从分支的历史记录中删除修订。它添加的修订将删除以前修订中引入的更改,因此在还原操作结束时分支的历史记录仍将保留合并,因为合并从未从分支的历史记录中实际删除。因此,我的主分支指针将在合并之前移到提交,这将创建新的提交。foo分支指针将出现在历史记录中,但合并的任何内容都不会出现。好的,我明白了。我的还原将创建一个新的提交,该提交将删除在指定提交中所做的更改。所有的历史都不会受到影响。