Since my last post about using Git from within PowerShell, a few things have changed which make the experience even better than before, including some pretty nifty tab completion.
Last night at DevEvening I did my first user group talk: an introduction to Git and PowerShell. As promised at the time, I have collected together some relevant links and made my slides available to download.
It is probably evident from previous posts on my blog that I like Git and working with it from within PowerShell. In the past I have talked about tweaking the PowerShell prompt to add git stats and setting up SSH-agent to work from PowerShell, however I have never actually gone through my entire Git/Windows environment and the steps taken in order to set it up. I thought it was time I did.
Those of you using git will more than likely be pushing and pulling over a SSH connection (to github for example). Recently I posted about my preference for using git from within Powershell. However there was always one really annoying thing when compared to using git from my OS X and linux machines - the need to type my private key passphrase every single time I do a push or pull. It got to the point where I decided to do something about it. Enter ssh-agent.
I have become quite fond of Powershell lately and enjoy its flexibility. As part of this flexibility, it has impressive scope for customisation and modification similar to Bash (although arguably in a much nicer way). My main bugbear with the default installation of Powershell is the horrible prompt you are provided with. As such, I have modified my prompt to better suit my needs including useful details about the git repository when within one.
The Git part of my prompt is inspired by this blog post, but with some of my own ideas and tweaks. It's also worth noting that like others, I use the excellent Console app, which makes a much nicer host application for Powershell (and cmd.exe, bash, etc).
Git is arguably the latest and greatest SCM tool available - my latest tool of choice in place of the old favourite Subversion, and as such have decided to move to using it for my personal projects. In addition, we have decided to use it at work, where we run operate using a mainly-Windows environent. This lead me on to setting up a Git server on Windows. This was achieved using Cygwin and plain old SSH/Git. This serves us fine for our needs, but a comment on twitter got me thinking - can Gitosis be used under Cygwin for a slicker experience. The answer is yes, and this post will explain how.
Up until recently, Subversion has been my SCM tool of choice and I have used it on almost all projects. However like many other people, I have been drawn to using Git. There are plenty of good articles available describing the benefits Git can bring (Nick Quaranto provides a nice summary of Git tutorials and articles) and as such I will not repeat them all here. However in my case, the move to Git has bought up a question relating to version numbering of applications.