Visual Studio 2015 如何将分支合并到 master?

Posted

技术标签:

【中文标题】Visual Studio 2015 如何将分支合并到 master?【英文标题】:Visual Studio 2015 How to merge a branch into master? 【发布时间】:2017-06-21 07:43:40 【问题描述】:

我是 GIT 新手,到目前为止,我一直在使用 Visual Studio Online TFS 进行版本控制,并且我是唯一的开发人员。当我创建我的上一个项目时,我有点误以为 GIT 是最好的选择。

所以我登记了我的主人。然后,当我要处理我读到的功能时,我必须创建一个分支(这在 TFS 中不是必需的),所以我创建了“development_print”作为一个新分支并处理我的功能。

现在我的功能已经完成,但我不知道如何将它合并回 master。目前我对多个分支不感兴趣,只想将我的新功能合并到 master 并保留在 master 中。

在 VS 中有一个 merge branch 选项,但它只允许我合并到 development_print(我希望我的功能到 master!)所以它不允许我设置到当前分支和合并自支线展示:

开发打印 主人 origin/development_print 起源/主人

这有点令人困惑?似乎一切都倒退了。那么如何在不丢失我在该功能上所做的所有工作的情况下摆脱这种混乱呢?

【问题讨论】:

checkout 到 master,并将你的功能合并到 master 另外,你不必在 git 中使用分支,它只会让事情变得更好,尤其是对于几个开发人员。 我在 VS 之外的 Git 命令行上做了: git checkout master 后跟 git merge development_print 和我的功能。我如何确保我现在在 master 分支上工作?如果可能的话,我想在我合并后摆脱 development_print 分支。我想合并也确实提交了。 【参考方案1】:

development_print分支合并到master分支的方法如下:

VS -> 团队资源管理器 -> 分支 -> 双击主分支 -> 合并 -> 从分支中选择 development_print 进行合并 -> 合并。

选择框显示:

development_print
master
origin/development_print
origin/master

这意味着您在本地和远程都有分支 development_printmasterorigin/ 表示远程存在分支。

如果合并后不想要development_print 分支,可以删除本地和远程:

团队资源管理器 -> 分支 -> 选择 development_print -> 右键单击​​ -> 删除 -> 选择 remotes/origin 下的 development_print -> 从远程删除分支。

【讨论】:

澄清双击“主分支”实际上会将您切换到主分支,对吗?因此,如果您转到解决方案资源管理器,您将在那里拥有主分支的文件而不是分支?【参考方案2】:

您可以按照微软教程“Create work in branches”。 此外,如 Jeremy Bytes(2014 年,但仍应适用)中的“Getting Used to Git in Visual Studio: Branches”所示,您可以返回“分支”部分并选择“合并”。

这给了我们填写的下拉菜单:

您可以在“Microsoft Application Lifecycle Management”中看到分支部分,这也是您创建主题分支时使用的:

【讨论】:

对于另一项任务,我只是在 master 分支上处理文件,而不使用 development_print 分支,但是当我尝试签入时,没有选项可以将任务 ID 与更改集相关联在 TFS 中总是这样做。似乎能够将任务 ID 关联到更改集的唯一方法是在分支上执行工作,然后合并。【参考方案3】:

在 VS 中切换到 master 分支作为您当前的分支,从 Team Explorer -> 分支中,您应该以正确的顺序获得合并选项,您可以在“从分支合并”下拉列表中进行选择 development_print 分支并且“进入当前分支”字段将被 master 预选。

【讨论】:

以上是关于Visual Studio 2015 如何将分支合并到 master?的主要内容,如果未能解决你的问题,请参考以下文章

带有 Visual Studio 2015 的 Git 切换分支导致更改

如何将当前分支与 Visual Studio 2019 中的另一个分支进行比较?

在 Visual Studio 2015 git repo 中切换分支时发生错误,无法 rmdir 访问被拒绝

Visual Studio 2015 社区版在线安装为啥这么慢

在 Visual Studio 2015 中使用 Cinder-OpenCV

如何刷新 Visual Studio 2017 Team Explorer 面板中的远程分支列表?