如何比较Visual Studio代码中的两个不同分支?
这可能吗?
如何比较Visual Studio代码中的两个不同分支?
这可能吗?
更新
现在可以使用了:
https://marketplace.visualstudio.com/items?itemName=donjayamanne.githistory
到目前为止,它还不受支持,但您可以跟踪它的线程:GitHub
现在可以使用githistory扩展了。
这里有一个小技巧:您可以比较来自每个分支的最新提交,这与并排比较两个分支或创建PR是一样的。
下面是如何使用githistory扩展:
打开githistory 点击“Git commit Icon”→从当前分支中选择最新的提交(通常应该是列表中的最新提交)。从打开的下拉菜单中点击“选择此提交”。 点击“Git commit Icon”,从你想要比较的分支中选择最新的提交。 因此,下拉菜单中应该出现几个选项→选择最后一个选项,表示“与SHA比较”,您将看到差异。
使用Git历史差异插件,方便并排分支差异:
https://marketplace.visualstudio.com/items?itemName=huizhou.githd
访问上面的链接,向下滚动到标题为Diff分支的动画GIF图像。你会发现你可以很容易地选择任何分支,并与你所在的分支进行并排比较!这就像你在GitHub Pull Request中看到的预览一样。对于Git的其他东西,我更喜欢Visual Studio Code的内置功能或其他人提到的Git Lens。
然而,上面的插件在做分支差异方面是出色的(即,对于那些做重基Git流的人来说,在强制推送到GitHub PR之前需要预览)。
2021的答案
下面是一步一步的指南:
安装GitLens扩展 然后,点击Source Control:
点击搜索和比较
点击比较参考资料
选择你想要比较的分支:
现在,您可以从“搜索和比较”中选择您想要查看差异的任何文件
在2020年11月发布的11.0.0版本中,GitLens视图现在默认都放在VSCode的源代码控制选项卡下,包括具有比较分支功能的搜索和比较视图:
可以在GitLens设置中更改回侧栏布局:
如果您只是想使用GitLens查看工作副本和特定提交之间对特定文件的更改,如果版本之间有许多文件更改,那么当前接受的答案可能会使您难以找到感兴趣的文件。
相反,如果文件是打开的,右键单击文件的选项卡(或者,如果它目前没有打开,转到侧栏中的文件资源管理器,右键单击文件),然后转到提交更改>打开修改更改…(或打开变更与分支或标签…)
这在没有GitLens的情况下是可能的(而且简单得多),只使用Git Graph插件。
打开Git Graph后,单击要比较的第一个提交,然后按Ctrl/Cmd +单击第二个提交。这两行都将突出显示。提交细节现在将显示A和提交B之间的所有差异,允许您跨分支或分支比较任何两个提交 来自同一个分支。
来源:Git Graph扩展页面
我通常希望将当前签出状态与其他分支(通常是master)进行比较。因为我喜欢使用键盘快捷键,我找到的最简单的方法(从现有的各种答案中编译):
按ctrl/cmd-P,打开VSC命令面板 开始输入'git compare'。出现以下选项: 选择“Compare HEAD with…”(或者其他更适合你的用例) 在出现的对话框中,选择所需的分支,例如master 在“搜索和比较”窗口(通常在左下角)检查结果。根据需要展开箭头,例如查看不同的文件,或后面/前面查看提交列表。
如果你想比较两个特定的分支(而不是签出的分支),选择“compare References…”’。然后你可以选择2个分支/标签/提交/…