Git Generate Ssh Key Windows 8

 

There are two Terminals in Windows Command Prompt and Powershell, and they both suck by far.I can understand that Command Prompt is no good, but why the Powershell wasn’t done better?!

The things missing in Powershell:

  • Maximizing is just so mid ‘90.
  • History for a session only (So annoying).
  • Painful adding of Aliases.
  • Emacs navigation (Ctrl+a,Ctrl+e,…).
  • Full screen and Tranparency (Oh I just want too much).
  • The config dir is in DocumentsWindowsPowerShell (WTF).

Maybe to most Windows users this is strange because this kind of stuff is never used, but ifyou’re coming from Linux or Mac then the frustration is certain. Because Linux or Mac arehaving great Terminal and working in them is just a joy.

  • Generate SSH key With msysgit comes a Git Bash needed to generate SSH keys. If you have one skip this step! To open Git Bash right-click on any folder in Windows Explorer and choose Git Bash.
  • Generating Your SSH Public Key Many Git servers authenticate using SSH public keys. In order to provide a public key, each user in your system must generate one if they don’t already have one.

The aim of post is to install git on Windowns and then configure it.Then customize a little bit the Powershell because the defaults are just crime against humanity.Configure SSH on machine and register SSH key with Github.Install must-have posh-git that will add the branch/statusto Powershell prompt plus auto-completion for git.

Note that I’m using Windows 8 and Powershell version 3.0.

Git Install

For those who might don’t know the git is created by Linus Torvalds the creator of Linux Kernel.Git was a product of his frustration maintaining Linux Kernel. He is not really thehuge fan of Windows (nor am I) so git Windows implementation was hard to do because itreally relies on Unix/Linux commands and philosophies that are lacking on Windows.

Windows 10, 8.1, and 7: Git for Windows. The easiest way to install Git and the SSH client on Windows 8.1 and Windows 7 is Git for Windows. It provides a Bash emulation (Git Bash) used for running Git from the command line and the ssh-keygen command that is useful to create SSH keys as you’ll learn below. Generating Your SSH Public Key That being said, many Git servers authenticate using SSH public keys. In order to provide a public key, each user in your system must generate one if they don’t already have one. Go to your command line. Follow the instructions to generate your SSH key pair. Adding your SSH public key to GitLab To add the SSH public key to GitLab, see Adding an SSH key to your GitLab account.

I know there was a problem I while back with the official Git version for Windowsand I was always using the msysgit,don’t know if still is the case but I will use msysgit in this post.

Download the latest msysgit and install itwith just clicking next few times. There are few things to configure, but using defaults is safest way.

Note:

There is also a Github for Windows. Probably even easier way toinstall and configure git on Windows, but I like to complicate things.

Add Git to PATH

By default the git binaries are not set in to PATH, so add it by going to:

Then in System Properties click on Environment Variables… and in System Variables list boxscroll to VariablePath, double-click it and add at the end:

Test that the git is available by opening the Powershell. Easiest way to open te Powershell(if there is no shortcut) especially in Windows 8 is Win+r and type powershell to prompt.

In Powershell type:

If you get something like usage: git, then the git is ready!

Configure Git

Set the user name that will be readable in git log or history:

Then set your email:

Note:

Your email address for Git should be the same one associated with your GitHub account.

Ssh

Generate Ssh Key Putty

Generate SSH key

With msysgit comes a Git Bash needed to generate SSH keys. If you have one skip this step!

To open Git Bash right-click on any folder in Windows Explorer and choose Git Bash.In Git Bash enter:

Keygen will ask you for passphrase. In my first attempt I’ve added one, but on each commit I have to enterpassphrase. That is so annoying.

Key

If you have a SSH key passphrase and it annoys you then enter:

It will ask you for current passphrase, enter the current passphrasse, and with two enters,you’ll now have a blank passphrase!

Git Bash Copy/Paste

The copy/paste is so awful in Git Bash. To paste you need to click the icon in top left corner,go to Edit then Paste.

The copy is even more cumbersome, I’ll just give you a hint, choose Select All!

Or read at the end in Options Tab part of Powershell Customization to enable QuickEdit Mode.

Set SSH key to Github

To set the public SSH key in Github there is need for getting it from a~/.ssh/id_rsa.pub.

Again open Git Bash right-click on any folder in Windows Explorer and choose Git Bash.In Git Bash enter:

This command will copy your public SSH key to clipboard. Then go toGithub / Account Settngs / SSH Keys and click the buttonAdd SSH Key.

Enter Title (sorry about my title):

Enter Key:

By clicking Add Key you have successfully added SSH key to Github andthe git pushing to Github is now super easy.

Powershell customization

The visual features of Powershell probably didn’t change since Windows 95, and defaultsare probably still dating from ‘95 and selecting, copy, pasting is awkward, hard and unusable!

Suck less Powershell

Git Generate Ssh Key Windows 8 1 Free Download

Click the small Powershell icon in top left corner, and in the context menu click on Properties.

Options Tab

In Edit Options check the QuickEdit Mode. Quick edit mode enables selecting text fromanywhere in Powershell and with right-click it will copy the selected content.Also with single right-click pastes the text where the blinking cursorcurrently is, similar to putty.

This option really boosts the productivity in Powershell, it is too bad that this isnot set by default!

Font Tab

Even we are in 21st century but the Powershell is still set by default to Raster Fonts withawkward sizes like 16x12, 6x8, that I never really get the meaning of.

Windows Git Ssh Key

In Font list choose the Consolas font (or other available mono-space font) and you can check theBold fonts if you like to have bold text. As for Size in list choose whatever you wantI’ll stick to 18.

Layout Tab

The Powershell by default is very small, at least to me, maximize is totally unusable, there isno full screen!

Screen Buffer Size and Window PositionWidth height should be same size if you dont wantto have ugly horizontal scroll bar. I set Width to 125 and Window PositionHeight to 35.

This are all customization, it is not too much but Powershell suck a little less after it,but there is a room for lots and lots of improvements, while Microsoft spends time onuseless technologies like Light Switch.

Posh-Git: Make your Git shine in Powershell

A set of Powershell scripts which provide Git/PowerShell integration. Includes:

  • Prompt for Git repositories - shows the current branch and the state of files (additions, modifications, deletions) within.
  • Tab completion for git commands.

Git Generate Ssh Key Windows 8 Free

Install

Clone it from Github to any folder, I’ll clone it in source folder:

Verify execution of Powershell scripts is allowed with:

The result should be RemoteSigned or Unrestricted.

Generate Ssh Key Github

If scripts are not enabled, run Powershell as Administrator and call: Teradata dialect does not support identity key generation.

Then cd to posh-git folder and run:

Then reload your profile, as noted in posh-git after install note:

If you’re done everything from this post then everything should work just fine!

The outcome of whole post is to have something at the end of the day:

And just for comparison the Terminal iTerm2 on my Mac OS X Mountain Lion with zsh shelland very short aliases, pure awesomeness: