Git Shell忽略了我的powershell配置文件中的自定义提示

时间:2014-09-23 00:58:19

标签: powershell powershell-v3.0 posh-git

我的PowerShell配置文件自定义提示和背景颜色。

$Host.UI.RawUI.BackgroundColor = 'Red';
function prompt
{
    Write-Host ("PS >") -nonewline -foregroundcolor Magenta
    return " "
}

当我打开PowerShell时,两个自定义都有效:

PS >

当我打开Git Shell时,只有背景颜色自定义工作背景为红色,但提示不短。

C:\Users\BigFont\Documents\GitHub>

...然后,如果我运行. $profile显式导入我的个人资料,整个自定义就可以了。

PS > 

如何让Git Shell更改提示而不必显式导入我的个人资料?

编辑

#1

运行$profile | select *会导致

AllUsersAllHosts       : C:\Windows\SysWOW64\WindowsPowerShell\v1.0\profile.ps1
AllUsersCurrentHost    : C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    : C:\Users\BigFont\Documents\WindowsPowerShell\profile.ps1
CurrentUserCurrentHost : C:\Users\BigFont\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

#2

正在运行. $profile会覆盖Posh Gits个人资料。这就是我想要的 - 现在我需要确定如何执行它而无需运行. $profile

1 个答案:

答案 0 :(得分:1)

posh-git的一个主要功能是更改提示以显示添加,分支等,因此其自定义可能会在您的自定义后覆盖它们。

通过重新导入您的个人资料,您实际上可能正在撤消posh-git的提示。要查看,请重新导入您的个人资料,然后cd进入回购。

同时检查$profile | select *以查看可能有效的所有配置文件。最好简单地编辑posh-git的配置文件(即使只是点源你自己的配置文件)。

编辑

阅读完编辑后,我会说继续编辑每个配置文件,直到找到运行posh-git的配置文件。从控制台主机在ISE编辑器中启动配置文件的简单方法是执行以下操作:

ise $Profile.AllUsersAllHosts
ise $Profile.CurrentUserAllHosts

(等)

请注意,配置文件可能实际上不存在。如果它们不存在,您将无法在ISE中启动它,这很好。

一旦找到了posh-git正在进行更改的那个,只需在最后点源自己的文件。

或者,您可以删除该文件或对整个内容进行评论。

让我知道我是否有意义,或者这是否令人困惑。