答案1
以下是控制提示显示的属性:PowerShell 提示符. 基本上一切都取决于用户可修改的名为 prompt 的函数。
函数提示 {'PS'+($pwd-split'\')[0]+''+$(($pwd-split'\')[-1]-join'\')+'>'}
使用此功能仅显示当前目录而不显示路径,但似乎您需要通过定义自定义配置文件(如中的示例)将其与豪华 git 设置相结合配置文件.示例.ps1在 posh-git 代码中
编辑:使用此信息(其本身并不是解决方案)komali_2 能够找到以下解决方案:
DrNoone 的回答提供了大量关于其工作原理的背景知识,我强烈建议阅读他的材料。
为了解决我的问题,请执行以下操作:
在文本编辑器中打开 posh-git 安装目录中的 profile.example.ps1 文件。
编辑它使其如下所示:
。
Push-Location (Split-Path -Path $MyInvocation.MyCommand.Definition -Parent) # Load posh-git module from current directory Import-Module .\posh-git # If module is installed in a default location ($env:PSModulePath), # use this instead (see about_Modules for more information): # Import-Module posh-git # Set up a simple prompt, adding the git prompt parts inside git repos function global:prompt { $realLASTEXITCODE = $LASTEXITCODE Write-Host(($pwd -split '\\')[0]+' '+$(($pwd -split '\\')[-1] -join '\')) -nonewline Write-VcsStatus $global:LASTEXITCODE = $realLASTEXITCODE return "> " } Pop-Location Start-SshAgent -Quiet
这将导致你的提示看起来像这样:
答案2
DrNoone 的回答提供了大量关于其工作原理的背景知识,我强烈建议阅读他的材料。
为了解决我的问题,请执行以下操作:
在文本编辑器中打开 posh-git 安装目录中的 profile.example.ps1 文件。
编辑它使其如下所示:
。
Push-Location (Split-Path -Path $MyInvocation.MyCommand.Definition -Parent)
# Load posh-git module from current directory
Import-Module .\posh-git
# If module is installed in a default location ($env:PSModulePath),
# use this instead (see about_Modules for more information):
# Import-Module posh-git
# Set up a simple prompt, adding the git prompt parts inside git repos
function global:prompt {
$realLASTEXITCODE = $LASTEXITCODE
Write-Host(($pwd -split '\\')[0]+' '+$(($pwd -split '\\')[-1] -join '\')) -nonewline
Write-VcsStatus
$global:LASTEXITCODE = $realLASTEXITCODE
return "> "
}
Pop-Location
Start-SshAgent -Quiet
这将导致你的提示看起来像这样: