我已经创建了一个项目并初始化了 git,我正在尝试遵循 Git-flow 来拥有一个 master 分支、一个开发分支,并在这个开发分支中创建相应的功能或修补程序。
为此,我执行以下操作:
我创建“开发”分支并移至它
git checkout -b develop
我创建了 feature_100 分支并移动到它
git checkout -b feature_100
我创建了一个 git 分支,我看到了 3 个分支,带有星号的我看到了我当前所在的分支
$ git branch develop * feature_100 master
我做了必要的提交
git commit -m "Add User model"
我将功能的更改合并到开发分支
git merge --no-ff feature_100
控制台结果:
Already up-to-date.
如果我再次执行“git 分支”,我会在控制台上看到这个结果
$ git branch
develop
* feature_100
master
如您所见,我的问题是如何关闭此“功能”并能够创建另一个。
我知道我没有回应特定案例,因为它已经解决了。但是,也许这种贡献会有所帮助。对于不耐烦的:您可以查看 git-flow 手册的链接
要快速将主题背景化:
虽然 git 是版本管理器,但 Git-flow 是 git 之上的分支管理协议。
如果 Git-flow 安装在项目 (.git) 中,也可以像 git 一样在控制台内部使用。
因为这是您的项目,所以初始化 Git-flow:
feature | hotfix | release
并根据您想要的 ( )管理您的分支类型 ( ),start | finish | publish | pull
如下所示:该链接为您提供更多信息。
在我看来,第 5 步并没有真正做任何事情,因为我知道您在活动分支为 时执行了它
feature_100
,因此您已将分支feature_100
与其自身合并(显然在这种情况下无事可做)。正确的做法是更改分支
develop
(git checkout develop
) 并从中进行有问题的合并git merge --no-ff feature_100
)。完成合并后,如果
feature_100
不再使用该分支,您可以使用git branch -d feature_100
. 这不会从历史记录中删除任何提交(git log
因为分支develop
仍会向您显示来自该分支和合并的提交),它只是删除该分支的名称(引用),从而从它给您的列表中删除“噪音”git branch
。