Build Your Own AppHarbor & Notes

On Saturday, April 9th I gave a presentation for building your own AppHarbor-like git push deployment system for .NET projects. I tried to screen record as best I could. The audio came out quite good except that I didn’t repeat a few audience questions so you can only hear me answering some anonymous chatter. The screencast is presented below along with a zip file containing my step-by-step notes, my sample rakefile.rb build script, and my sample post-update hook for the git repo. Much thanks to Alex Hung for hosting the video for me!

Philly CodeCamp 2011 on Vimeo.

Associated Notes & Files: Gitserver Files

Windows Shell Organization

If you use Microsoft Windows and you work in a shell or command prompt frequently then you probably have more than one shell window open at a time. On Microsoft Windows, I frequently have a regular cmd window, SSH Cygwin window, second cmd window for Git commands, and sometimes even a PowerShell window. This can get confusing pretty quickly which makes it difficult to alt-tab back and forth between the shell windows I’m looking for. You get a mess like:

Messy Shells
They all look the same!

That’s a mess and it drives me crazy. One nice way to organize your shells, at least by group, is to color code them so they stand out better. For example, I use the following color scheme for my typical shell groups:

  • SSH: Green on black
  • Git: Purple on black
  • CMD: Yellow on black
  • PowerShell: Default white on blue

I also use custom sizes and font setups so I can get a little real estate onto my shell rather than the default Microsoft setup. The basic 80×25 default layout isn’t helping anybody!

Default Shell Layout
Default Shell Layout. Yuk!

Here are some simple steps to customize the font for your shell and color code them in a way that makes it easy to navigate to:

1. Left click the little icon in the top left corner of window and click on the “Properties” menu item. You will get the “Command Prompt Properties window as illustrated below.

2. Beginning with the color tab, select the screen text and background you would like. I’m a sucker for the classic terminal black background so I usually sticky with it. Try the green or yellow colors because they stand out better against the black background.

Command Window Properties
Command Window Properties

3. Choose a layout that is suited for you. I’ve been using 90×40 lately so change the “Width” on the “Screen Buffer Size” and “Window Size” to 90 and the “Height” on the “Window Size” to 40. Leave the height on the “Screen Buffer Size” at 300. This dictates how much scrollable vertical area you can go back and review with the scrollbar on the right.

Choose Layout
Choose Layout

4. The default font settings are a pretty chunky 8×12. Recent versions of Microsoft Windows have allowed for using True Type fonts. You can experiment with these a little to suit your needs. I use the Lucida Console font with a size of 12.

Font Settings
Font Settings

Tada! Look how nice that new shell looks! The font is smaller and nicer looking and you’ve got lots more real estate to issue and perform commands! Below is an example of my cmd, ssh, PowerShell, and Git shells all in one place but which are easily selectable because of the simple color coding:

Completed Shell
Completed Shell

Try some experimentation with the fonts and colors to get a system that works for you. You’ll only have to configure the properties one time and will save LOADS of squinting while switching between windows!

SSH, Git, PowerShell, CMD
SSH, Git, PowerShell, CMD