********************************************************************** git-clone ssh://git@example.com ********************************************************************** Example for cloning a git repository over ssh. .. code-block:: bash $ git clone git@example.com .. code-block:: python class MyRemoteCallbacks(pygit2.RemoteCallbacks): def credentials(self, url, username_from_url, allowed_types): if allowed_types & pygit2.enums.CredentialType.USERNAME: return pygit2.Username("git") elif allowed_types & pygit2.enums.CredentialType.SSH_KEY: return pygit2.Keypair("git", "id_rsa.pub", "id_rsa", "") else: return None print("Cloning pygit2 over ssh") pygit2.clone_repository("ssh://github.com/libgit2/pygit2", "pygit2.git", callbacks=MyRemoteCallbacks()) print("Cloning pygit2 over ssh with the username in the URL") keypair = pygit2.Keypair("git", "id_rsa.pub", "id_rsa", "") callbacks = pygit2.RemoteCallbacks(credentials=keypair) pygit2.clone_repository("ssh://git@github.com/libgit2/pygit2", "pygit2.git", callbacks=callbacks)