= Account setup!
Apostolos rootApostolos@swarmlab.io
// Metadata:
:description: Git instructions
:keywords: git basics
ifndef::env-browser[]
:data-uri:
endif::[]
:images-cdn: http://localhost:3080/images
:toc: right
:toc-title: Table of contents
:toclevels: 4
:source-highlighter: highlight
:no-header-footer:
:nofooter:
:last-update-label!:
:icons: font
:sectnums: 
:url_mongodb: https://en.wikipedia.org/wiki/MongoDB

:hardbreaks:

{empty} +
{empty} 

:!hardbreaks:

=== Account Setup and Configuration

* The first thing you need to do is set up a free user account.
Simply visit https://github.com[Github^], choose a user name that isn't already taken, provide an email address and a password, and click the big green *"`Sign up for GitHub`"* button.


* The next thing you'll see is the pricing page for upgraded plans, but it's safe to ignore this for now.

** GitHub will send you an email to verify the address you provided.
** Go ahead and do this; it's pretty important (as we'll see later).

[NOTE]
====
*GitHub provides almost all of its functionality with free accounts*, except some advanced features.

GitHub's *paid plans include advanced tools and features as well as increased limits for free services*.

To get more information about available plans and their comparison, visit https://github.com/pricing[paid plans^].
====

You're now ready to use GitHub.

==== SSH Access

As of right now, you're fully able to connect with Git repositories using the `https://` protocol, authenticating with the username and password you just set up.
However, to simply clone public projects, you don't even need to sign up - the account we just created comes into play when we fork projects and push to our forks a bit later.

If you'd like to use SSH remotes, you'll need to configure a public key.

Open up your account settings using the link at the top-right of the window

Then select the "`SSH keys`" section along the left-hand side.

.The "`SSH keys`" link.
image::images/ssh-keys.png[The “SSH keys” link]

From there, click the "`Add an SSH key`" button, give your key a name, paste the contents of your `~/.ssh/id_rsa.pub` (or whatever you named it) public-key file into the text area, and click "`Add key`".

[NOTE]
====
Be sure to name your SSH key something you can remember.

You can name each of your keys (e.g. "My Laptop" or "Work Account") so that if you need to revoke a key later, you can easily tell which one you're looking for.
====


==== Your Email Addresses

The way that GitHub maps your Git commits to your user is by email address.

If you use multiple email addresses in your commits and you want GitHub to link them up properly, you need to add all the email addresses you have used to the Emails section of the admin section.

== Generating a new SSH key and adding it to the ssh-agent

=== http://docs.swarmlab.io/SwarmLab-HowTos/swarmlab/files/help/HowTo-gitea-ssh.adoc.html[Add SSH key^]



 "Pro Git book" by Scott Chacon and Ben Straub , used under CC BY-NC-SA 3.0 / Desaturated from original

