Posh-Git – What does it do?

I’ve been battling with Git on Windows for over a week now, trying to make it usable. I heard about Posh-Git for PowerShell, but I can’t seem to find any information about what it actually does.

Does Posh-Git replace the standard git command-line tool and syntax with alternatives that are reliable, intuitive, unlikely to change in a future version and display nicely on the screen?

Or does Posh-Git just modify the prompt?


From what I can tell from reading the posh-git README and the blog post “Better Git with PowerShell”, posh-git does only two things:

  • modifies the prompt – saves you having to run git status by putting some of that info in the prompt
  • provides tab-completion – lets you type commands that use git more easily by pressing Tab

Thus, it does not change the git command-line tool or its syntax.


Posh-Git is useful for shell intergration.

You can't incooperate shell scripts on a windows box without this tool.


In my experience there are some subtle differences in conventions like backslashes used in path names.


Why not just take a look at the source codes to see? dahlbyk / posh-git.

There's also a nice introduction to it Better Git with PowerShell.