Cocoapods with private git repository

If you use SSH and have generated a SSH Key (more info here)

$>more ~/.ssh/config

It should give you something like that:

Host SomeHostNameAlias
    HostName github.com
    User YourUserName
    PreferredAuthentications publickey
    IdentityFile /Users/YourLocalAccount/.ssh/TheSSHKeyGenerated

Then, in your Podfile, you should be able to do something similar to this (I didn’t put :branch =>, but if you need it, and also note that I replace then the : with a / in the path after the host replacement.):

pod 'MyLibrary', :git => 'ssh://git@SomeHostNameAlias/perfect/top-library.git'

Side note: I use this kind of behavior with Bitbucket. I’m not a big expert on SSH and GitHub, and there may be some little changes on the git path for instance.

Using the Host alias like this may also help you manage different SSH keys for the same HostName (like different account/SSH on the same Git Server), could be useful on SourceTree if you manage different clients, personal/work access, etc.

Leave a Comment