posh-git Release v0.2

I just tagged the v0.2 release of posh-git, which you can download here. This is the last release supporing msysgit 1.6.5 and 1.7.0. In this release…

PowerShell Module

Thanks to a contribution from David Muhundro,
posh-git now exposes its functions through a module (.psm1). The module
exposes a number of functions whose usage can be seen in the example

Tab Expansion Updates

  • TortoiseGit commands: tgit <tab>
  • git-svn operations: git svn <tab>
  • Stash completion for git stash operations: show, apply, drop, pop, branch
  • Branch completion for git reset and git rebase
  • Completion of deleted files for git rm
  • For most commands, tab completion should now work if other command flags are in use. For example, git rebase -i <tab> works as expected.

Thanks to Jeremy Skinner and Mark Embling for their contributions to this release.

Next Steps

The most common complaint about posh-git is performance, which has
already been addressed for the next release (available in my master
branch). However, the fix requires taking a dependency on msysgit 1.7.1,
which has not been officially released yet.  Still, it has been working
fine for me.

Beyond that, we still need to address the first two items on my list from the last release…

  • Testing! I’d like to figure out a way to run some integration tests
    that verify a given repository state renders the expected prompt. If
    you have suggestions how to approach this, or know how other Git
    integration projects are tested, please let us know over at the Google Group.
  • Documentation! How to get started, what the project provides, etc.

If you have any other feature requests or find issues, please let us know.

About Keith Dahlby

I'm a .NET developer, Git enthusiast and language geek from Cedar Rapids, IA. I work as a software guru at J&P Cycles and studied Human-Computer Interaction at Iowa State University.
This entry was posted in git, posh-git, powershell. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • You could include a repo in an archive file to test against with branches in all the states you wish to test against. Unpack it and run all your tests.

  • Thanks for the suggestion, Chris. The other option seems to be representing each test case as a script that builds up a repo with the required state, though the tests would take longer to run.