-
posh-git now exports the variable
$GitPromptScriptBlock
which contains the code for the default prompt. (#501) (PR #513)If you need to execute your own logic in your own prompt function but still want to display the default posh-git prompt, you can execute this scriptblock from your prompt function e.g.:
# profile.ps1 function prompt { Set-NodeVersion &$GitPromptScriptBlock } Import-Module posh-git
-
Fixed 'Write-Prompt' to be able use Black as foreground color. (#470) (PR #468) Thanks Vladimir Poleh (@vladimir-poleh)
-
Pass "git.exe" instead of "git" to Get-Command. (PR #478) (PR #479) Thanks Mike Sigsworth (@mikesigs)
-
Squash ssh agent warnings if
-Quiet
. (PR #484) Thanks Refael Ackermann (@refack) -
Fixed directory names that contain [brackets] cause GitPrompt to fail. (PR #502) Thanks Duncan Smart (@duncansmart)
-
Added
Add-PoshGitToProfile -AllUsers
support (PR #504) -
Fixed duplicated branch completion for git checkout (#505) (PR #506) (PR #512) Thanks Christoph Bergmeister (@bergmeister)
-
Fixed PSScriptAnalyzer warnings in the source (PR #509) Thanks Christoph Bergmeister (@bergmeister)
-
Fixed errors added to $Error collection by
Get-GitStatus
command (#500) (PR #514) -
Clean up wording for work dir local status in help file (PR #516)
-
Added
$GitPromptSettings.AdminTitlePrefixText
(default:'Administrator: '
) (#537) (PR #538) Thanks Eric Jorgensen (@nebosite) -
Added
$GitPromptSettings.UntrackedFilesMode
; accepted values are$null
(inheritstatus.showUntrackedFiles
), "all", "no", and "normal" (#556) (PR #557) Thanks David Snedecor (@TheSned) -
PoshGitVcsPrompt
errors now show details if$GitPromptSettings.Debug
(PR #560) -
Exported
Expand-GitCommand
for use with custom tab expansion (#562) (PR #563) -
Add code coverage to Coveralls.io (#416) (PR #461) Thanks Jan De Dobbeleer (@JanJoris)
- Fixed tab completion issues with duplicate aliases (#164) (#421) (PR #422)
Add-PoshGitToProfile
will no longer modify a signed$PROFILE
script; it also learned-Confirm
(PR #428)- Overwrite pre-0.7 posh-git prompt on import (PR #425)
- Fix Chocolatey deprecation warning with dependency on 0.9.10 (PR #426)
- Don't rerun Pageant if there are no keys to add (PR #441)
- Improve (and hide for Chocolatey) profile.example.ps1 deprecation messaging (#442) (PR #444)
- Quote tab completion for remote names containing special characters (PR #446)
- Fix signed $PROFILE detection for PowerShell v2 (#448) (PR #450)
- Create $PROFILE parent directory if missing (PR #449) (PR #452)
- Add -verbose parameter to install.ps1 (PR #451)
- Write-Prompt now correctly handles $null color parameters; the prompt now also uses DefaultForegroundColor when appropriate (PR #454)
- Add error handling to Write-GitStatus (PR #170) (PR #453)
This release has focused on improving the "getting started" experience by adding an Add-PoshGitToProfile
command that
modifies the user's PowerShell profile script to import the posh-git module whenever PowerShell starts.
When posh-git is imported, it will automatically install a posh-git prompt that displays Git status summary information.
Work was also done to improve performance of Get-GitStatus
when inside large Git repositories.
Work was begun to eliminate some obvious crashes on PowerShell on .NET Core but more work remains to be done.
- Performance of
Get-GitStatus
on large repos has been improved (PR #319) - Fix prompt and tab completion with non-ASCII characters (#64) (PR #223) (PR #359) (#374) (#389) (PR #397) (PR #403)
- Fix incorrect tab expansion for
git push --option <remote>
(#234) (PR #379) - Fix support for bare repository (#291) (PR #370)
- Fix syntax error on setenv calls (PR #297)
- Fix temp path issue with ~ in 8.3 filenames (#298) (PR #299)
- Fix problem on open source PowerShell, missing
WindowsPrincipal
/WindowsIdentity
(#301) (PR #312) - Fix/simplify Chocolatey install and add uninstall (#358)
- Remove invalid branch from tab expansion when
HEAD
is detached (PR #367) - Fix PowerShell Core error on
EnvironmentVariableTarget
(#317) (#369) (PR #318) - Fewer errors generated in global
$Error
collection (PR #370) - Remove error thrown by
git symbolic-ref
andgit describe
(PR #307) - Export command Write-VcsStatus to improve module auto-loading (PR #284)
- Update module import so that it sets the prompt function iff the user does not have a customized prompt function (#217) (PR #349)
- Update profile.example.ps1 to remove prompt function and tweak how module is imported (PR #349)
- Add tab completion for AVH git-flow commands (PR #231)
- Add new commmand Add-PoshGitToProfile (PR #361)
- Add about_posh-git help topic (PR #298)
- Add new settings for default posh-git prompt:
- Add ahead/behind count to prompt
(PR #256)
- Add
BranchBehindAndAheadDisplay
setting to control count display (Full (default), Compact, Minimal)
- Add
- Fix empty
Git-SshPath
issue (PR #268) - Add new settings for prompt status summary text:
FileAddedText
,FileModifiedText
,FileRemovedText
andFileConflictText
(PR #277) - Add tags to 'push' tab-completion (PR #286)
- Add new branch status to indicate upstream is gone (PR #326)
- Add tab completion support for shorthand force-push syntax (
git push <remote> +<tab>
) (#173) (PR #174) (PR #343) - Add tab completion of unique remote branch names for
git checkout <tab>
(#177) (PR #251) (PR #352) - Add
git worktree
tab completion (PR #366) - Add alias support for TortoiseGit commands (PR #394)
- Add support for tab-completion of Git parameters, long and short (PR #395)
- Switch
$GitPromptSettings
type fromPSObject
toPSCustomObject
. On PowerShell v5 and higher, this preserves the definition order of properties in$GitPromptSettings
making it easier to find properties. - Fix prompt status in worktree (#407) (PR #408)
- Quote tab completion for items containing special characters (#293) (PR #413)
Thank you to the following folks who contributed their time and scripting skills to make posh-git better:
- Keith Hill (@rkeithhill)
- Pester test infrastructure
- Triage of open issues and PRs
- Many README and help improvements
- Many of the fixes enumerated above
- Marcus Reid (@cmarcusreid)
- Use GitStatusCache when it's installed (PR #208)
- Report UpstreamGone from GitStatusCache response (PR #372)
- Jason Shirk (@lzybkr)
- Ralf Müller (@seamlessintegrations)
- Add support for tab-completion of Git parameters (PR #395)
- Aksel Kvitberg (@Flueworks)
- Add Worktree tab completion (PR #366)
- Eric Amodio (@eamodio)
- Add aliasing support for TortoiseGit commands (PR #394)
- Kevin Shaw (@shawmanz32na)
- Add DefaultPromptAbbreviateHomeDirectory setting (PR #387)
- KanjiBates (@KanjiBates)
- Fix link to git-scm.com in README.md (PR #396)
- Joel Rowley (@hjoelr)
- Fix syntax error on setenv calls (PR #297)
- Hui Sun (@JimAmuro)
- Josh (@joshgo)
- Add tags to 'push' tab-completion (PR #286)
- Rebecca Turner (@9999years)
- Add new settings for prompt FileAddedText, FileModifiedText, FileRemovedText and FileConflictText (PR #277)
- Jack (@Jackbennett)
- Export command Write-VcsStatus to improve module auto-loading (PR #284)
- Brendan Forster (@shiftkey)
- Paul Marston (@paulmarsy)
- INOMATA Kentaro (@matarillo)
- Fix branch names using UTF8 characters do not display correctly (PR #223)
- Luis Vita (@Ivita)
- Fix typo in git commit parameter --amend in tab exansion (PR #405)
- Skeept (@skeept)
- Fix debug prompt breaking posh-git prompt on PowerShell v4 (PR #406)
- @theaquamarine
- Jan De Dobbeleer (@JanJoris)
- Remove errors thrown by
git symbolic-ref
andgit describe
(PR #307)
- Remove errors thrown by
- Dan Smith (@dozius)
- Add tab completion for AVH git-flow commands (PR #231)
- @drawfour
- Add ahead/behind count to prompt (PR #256)
- Dan Turner (@dan-turner)
- Add tab completion support for shorthand force-push syntax (
git push <remote> +<tab>
) (PR #174)
- Add tab completion support for shorthand force-push syntax (
- Mark Hillebrand (@mah)
- Add tab completion of unique remote branch names for
git checkout <tab>
(PR #251)
- Add tab completion of unique remote branch names for
- Jeff Yates (@somewhatabstract)
- Don't rerun Pageant if there are no keys to add (PR #441)
- Tolga Balci (@tolgabalci)