Get started with GitHub
The GitHub site is really nice for easy commits, there are multiple tools provided to manage that on multiple platform. (GitHub Desktop, Kraken). However, I wanted to document and explore the command line way of committing.
My main source will be from gitlab plus some precision over certain steps that I’ve encountered while doing them at a beginner level. But there’s also a very good documentation made byGitHub.
- github help
- Full documentation links
- Start with basics
- Workshop step by step (my favourite)
- Online tutorial
Configure your environment
Windows Os: Install Git for Windows which is an emulated terminal with git.
git in the Terminal application. If it’s not installed, it will prompt you to install it.
sudo apt-get install git-all
- Red Hat:
sudo yum install git-all
One-time configuration of the Git client. Replace what’s in
" " by your information.
git config --global user.name "Your Name" git config --global user.email firstname.lastname@example.org
This information will be store in the git config file:
cat ~/.gitconfig # This is Git's per-user configuration file. [user] name = "Your Name" email = email@example.com
Configure SSH Key
Type on the command prompt
cmd.exe (on Windows, not in the git one).
ssh-keygen -t rsa -b 4096 -C "you@company"
You will be prompted for the following information. Press enter to accept the defaults. Defaults appear in parentheses.
Generating public/private rsa key pair. Enter file in which to save the key (/Users/you/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/you/.ssh/id_rsa. Your public key has been saved in /Users/you/.ssh/id_rsa.pub. The key fingerprint is: 39:fc:ce:94:f4:09:13:95:64:9a:65:c1:de:05:4d:01 you@computer-name
Then find your rsa key in the repository (by default, from the command prompt on Windows):
ssh-rsa AAAAB3NzaC1yc2EAAAADAQEL17Ufacg8cDhlQMS5NhV8z3GHZdhCrZbl4gz you@company
Name your SSH key properly so that you know which key correspond to what, in case of doubt revoke it and recreate a new one. You don’t want people stealing your private key and committing in your name.
You could also set up a GPG key for additional protection with a provider like keybase, but that’s for a bit more advanced when you need extra security.
Clone a project
Now that you have your ssh key you can clone a project using SSH:
git clone firstname.lastname@example.org:UpstreamOrg/UpstreamRepo.git
You know it’s a SSH git clone because of the
git@ in the repository url.