Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.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_Branch_Git Branch_Branching And Merging - Fatal编程技术网

git-制作一个';新鲜';是否在保留当前要素分支的同时进行要素分支?

git-制作一个';新鲜';是否在保留当前要素分支的同时进行要素分支?,git,branch,git-branch,branching-and-merging,Git,Branch,Git Branch,Branching And Merging,关于git 我有一个功能分支,我们称之为foo。在中,有许多已提交的更改和一些未提交的更改来实现功能 我做了一个不好的假设,foo中的很多内容不再可取 我想创建一个新的功能分支,bar,不需要对foo进行任何更改,并手动将有用的位从foo重新实现为bar 一旦bar正常,我将删除foo分支 我如何在没有foo中任何内容的情况下创建新的功能分支(一个新的开始),同时保留foo中的内容,以便我可以在必要时查看它?我认为您可以切换到master并从那里再次分支 git checkout master

关于git

我有一个功能分支,我们称之为
foo
。在中,有许多已提交的更改和一些未提交的更改来实现功能

我做了一个不好的假设,
foo
中的很多内容不再可取

我想创建一个新的功能分支,
bar
,不需要对
foo
进行任何更改,并手动将有用的位从
foo
重新实现为
bar

一旦
bar
正常,我将删除
foo
分支


我如何在没有
foo
中任何内容的情况下创建新的功能分支(一个新的开始),同时保留
foo
中的内容,以便我可以在必要时查看它?

我认为您可以切换到
master
并从那里再次分支

git checkout master
git checkout -b bar
不过,在执行此操作之前,您必须提交任何未提交的更改。

(您可以隐藏,但我认为在这种情况下这不是一个好主意)。

我认为您可以切换到
master
并从那里再次分支

git checkout master
git checkout -b bar
不过,在执行此操作之前,您必须提交任何未提交的更改。

(你可以藏起来,但我认为在这种情况下这不是一个好主意)。

好的,回答我自己的问题。我出错的地方是,在创建新分支时,我仍然在feature分支中,因此我选择了
foo
的当前状态


通过提交
foo
中的所有内容,然后签出
master
,我能够创建
bar
,并有一个新的开始。

好,回答我自己的问题。我出错的地方是,在创建新分支时,我仍然在feature分支中,因此我选择了
foo
的当前状态

git checkout -b bar <commit>
通过提交
foo
中的所有内容,然后签出
master
,我能够创建
bar
,并有一个新的开始

git checkout -b bar <commit>
以编程方式查找提交(假设您从
master
分支):

以编程方式查找提交(假设您从
master
分支):


非常感谢。我刚算出来,但你解释得比我好。我会接受答案,一旦我能够(某种形式的时间限制,目前到位)。再次感谢,谢谢。我刚算出来,但你解释得比我好。我会接受答案,一旦我能够(某种形式的时间限制,目前到位)。再次感谢。好的!这比我现在需要的更多,但非常有用的信息-谢谢。请注意,
--pretty=oneline--abbrev commit
--oneline
相同。好的!这比我现在需要的更多,但非常有用的信息-谢谢。请注意,
--pretty=oneline--abbrev commit
--oneline
相同。