An automated Github setup tool that will:
- Create your account
- Setup your SSH key
- Create your first repo
- Clone your first repo to local
- Create your first file
- Add, commit, and push your first file to git
GHSU is a PyPi package installable via pip.
First ensure you have python3 installed via:
sudo apt install python3.6Then install the package installer for Python, pip, via:
sudo apt-get install python3-pipFinally, install GHSU using pip:
pip install ghsuGHSU employs a software automation library, selenium, which makes calls to Google Chrome. If you don't have Chrome installed, join the rest of the 21st century and please install it.
In the terminal, run:
ghsuAnd you should be prompted for a email, password, and username. Make sure the password is secure (i.e. containing numbers, letters (upper-/lowercase), and special characters).
Enter your email:
<emailusername>@<server>.<domain>
Enter your password:
<password>
Enter your username:
<username>The script should open a chrome window and begin setup. Eventually, the script should pause and you should be prompted to complete a captcha.
After completion, the script should setup your SSH key, create and clone your first repo, pull that repo to local, create a test file, and push that file to Github.
If you have already set up a Github account, but have not set your SSH key, run:
ghsusshIf you have already set up a Github account and SSH key, but have not yet created, cloned, and pushed to a repo, run:
ghsurepo- Creates your account
- Sets up your SSH key
- SSH keys are extremely valuable, as they provide git with a means to establish a secure connection such that password entry is not needed for pushing/pulling code. Your SSH key is set up by running "ssh-keygen -t ed25519 -C "your_email@example.com"" inside your terminal. This key is then copied and pasted into Github
- Navigates to "https://github.com/settings/keys" and copies the key generated by ssh-keygen into Github
- After saving the key, we're now able to pull/push code via SSH (devoid of passwords)
- Creates a repo and copies the SSH link
- Clones that repo via "git clone "
- Navigates to the newly cloned repo and:
- Creates a file
- Populates it with some code
- Stages that code for pushing with "git add "
- Commits the changes with "git commit -m ""
- Pushes that code via "git push "