Skip to content

git cannot bring up VScode diff tool under powershell ISE #4908

@jdai

Description

@jdai

Prerequisites

  • I have written a descriptive issue title.
  • I have searched all open and closed issues to ensure it has not already been reported.
  • I have read the troubleshooting guide.
  • I am sure this issue is with the extension itself and does not reproduce in a standalone PowerShell instance.
  • I have verified that I am using the latest version of Visual Studio Code and the PowerShell extension.
  • If this is a security issue, I have read the security issue reporting guidance.

Summary

when use "git difftool", on PS it pops up vscode and works well, or PS ISE it doesn't pop up vscode and stuck.

this case might similar as: #4012

OS Name Microsoft Windows 11 Enterprise
Version 10.0.22631 Build 22631

PowerShell Version

PS E:\repos\king> $PSVersionTable; $Host

Name                           Value                                                                                                                                    
----                           -----                                                                                                                                    
PSVersion                      5.1.22621.2506                                                                                                                           
PSEdition                      Desktop                                                                                                                                  
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                                                                                  
BuildVersion                   10.0.22621.2506                                                                                                                          
CLRVersion                     4.0.30319.42000                                                                                                                          
WSManStackVersion              3.0                                                                                                                                      
PSRemotingProtocolVersion      2.3                                                                                                                                      
SerializationVersion           1.1.0.1                                                                                                                                  

Name             : Windows PowerShell ISE Host
Version          : 5.1.22621.2506
InstanceId       : b41bcafd-56c2-4c89-b635-42369ab60fcb
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : zh-CN
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.Host.ISE.ISEOptions
DebuggerEnabled  : True
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

Visual Studio Code Version

PS E:\repos\king> code --version
1.85.2
8b3775030ed1a69b13e4f4c628c612102e30a681
x64

Extension Version

PS E:\repos\king> code --list-extensions --show-versions | Select-string powershell

ms-vscode.powershell@2024.0.0

Steps to Reproduce

1)start powershell ISE
2)setup vscode/git env, touch one for file that is in git repo(say file1.txt) then edit .gitconfig by:
PS> config --global -e
......#add these lines below:
[diff]
tool = vscode
[difftool "vscode"]
cmd = code --wait --diff $LOCAL $REMOTE
[merge]
tool = vscode
[mergetool "vscode"]
cmd = code --wait $MERGED
3)run:
PS E:\repos\king> git difftool

Viewing (1/1): 'tools/pwsh/modules/Build-Utils.psm1'
git difftool
PS E:\repos\king> git difftool
then stuck.

On PS(not ISE), same command will lead to:
PS E:\repos\king> git difftool

Viewing (1/1): 'tools/pwsh/modules/Build-Utils.psm1'
Launch 'vscode' [Y/n]?
type S and it will continue to pop up vscode window. both PS and PS ISE run as admin.

Visuals

No response

Logs

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions