如何比较Visual Studio代码中的两个不同分支?
这可能吗?
如何比较Visual Studio代码中的两个不同分支?
这可能吗?
当前回答
在2020年11月发布的11.0.0版本中,GitLens视图现在默认都放在VSCode的源代码控制选项卡下,包括具有比较分支功能的搜索和比较视图:
可以在GitLens设置中更改回侧栏布局:
其他回答
更新
现在可以使用了:
https://marketplace.visualstudio.com/items?itemName=donjayamanne.githistory
到目前为止,它还不受支持,但您可以跟踪它的线程:GitHub
更新:截至2020年11月,Gitlens出现在VSCode的内置源代码控制面板中
我推荐使用Git Lens。
我通常希望将当前签出状态与其他分支(通常是master)进行比较。因为我喜欢使用键盘快捷键,我找到的最简单的方法(从现有的各种答案中编译):
按ctrl/cmd-P,打开VSC命令面板 开始输入'git compare'。出现以下选项: 选择“Compare HEAD with…”(或者其他更适合你的用例) 在出现的对话框中,选择所需的分支,例如master 在“搜索和比较”窗口(通常在左下角)检查结果。根据需要展开箭头,例如查看不同的文件,或后面/前面查看提交列表。
如果你想比较两个特定的分支(而不是签出的分支),选择“compare References…”’。然后你可以选择2个分支/标签/提交/…
现在可以使用githistory扩展了。
这里有一个小技巧:您可以比较来自每个分支的最新提交,这与并排比较两个分支或创建PR是一样的。
下面是如何使用githistory扩展:
打开githistory 点击“Git commit Icon”→从当前分支中选择最新的提交(通常应该是列表中的最新提交)。从打开的下拉菜单中点击“选择此提交”。 点击“Git commit Icon”,从你想要比较的分支中选择最新的提交。 因此,下拉菜单中应该出现几个选项→选择最后一个选项,表示“与SHA比较”,您将看到差异。
如果您只是想使用GitLens查看工作副本和特定提交之间对特定文件的更改,如果版本之间有许多文件更改,那么当前接受的答案可能会使您难以找到感兴趣的文件。
相反,如果文件是打开的,右键单击文件的选项卡(或者,如果它目前没有打开,转到侧栏中的文件资源管理器,右键单击文件),然后转到提交更改>打开修改更改…(或打开变更与分支或标签…)