- Quick Start For Linux + OSX Users
- Distributed Version Control Using git
- Code Sharing + Collaborations Using github
- Run Gnu Tools Like Bash and Git Locally
- Three Levels to Git Pro Skills
- Git Ops Jumpstarts: Multiple Ways To Jump In
- Extra Support For Windows Users
- Gist Repo Root Page Index
- Side Notes:
- Getting To Simple Can Be Complex.
- Pave Roads, So That Others May Drive.
- There Are Many Ways To The Mountain Top.
-
Work-In-Progress Tasks:
- 1: Skim this doc and comment below, including file:line references.
- 2: Indicate Chosen Role: devs admins tpms creatives trainers ...
- 3: Report, document and share all onboarding friction and best practices.
- 4: Review the gihub markdown (ghmd) code behind this gist by clicking on the [Raw] button on the upper right.
-
Share Basic Details Privately:
- 1: Local desktop year + operating system + version. We support all desktop operating systems.
- 2: Software development language(s) of interest. We support all software development languages.
- 3: When are your most convenient regular times for support and training?
- 4: Would you like to work solo, paired or on a team?
-
Stage 1: Open Source Software Developer - Github 101
- Register For Your Free Github Account.
- Verify by sharing your github login id here: Open Source Web Dev FB Group.
- Inquire about github profile templates + analytics.
- Inquire about github markdown and github pages. NO HTML NEEDED!
- Learn how to barter by contributing to open source github projects.
- Register For Your Free Github Account.
-
Role Descriptions
-
Devs code to build apps, and devs are identified by: software development language(s) and framework(s)
-
Admins support systems + services + users + data, on-premise and in the cloud.
-
Engineers stand up infrastructure + provide custom security + testing + automation + tool-building.
-
Tech Project Managers support projects and teams with onboarding + task management + workflow analytics.
-
Creatives include photographers + illustrators + user interface designers + musicians + etc.
-
Trainers build and support labs for both teaching and learning curriculum + instruction + assessment
-
Stakeholders own the deliverables for an organization or business.
-
Lawyers, journalists and community activists might test and discover where github workflows and transparency are healthy for democracy.
-
-
NOTES ON ROLES + TOOLS:
- Devs and admins MUST do git on the command line.
- Creatives can use the desktop app.
- The key to team github skill-building is to learn to use the team dev dojo to learn:
- How to break things.
- How to fix those things.
- How team dev best practices allow those problems to thereafter be prevented.
-
Stage 2: Install Gnu Tools Locally
-
This section assumes we know where to find our local desktop terminal app.
- Linuxification of Apple OSX Requires Homebrew
- Article About Gnu Tools on OSX
- Public Github Repo: Linuxify => How can we trust this?
-
Windows Users: Run bash shell + git locally by installing Git For Windows.
-
-
Stage 2 Tests: Local Gnu Tools
-
Local bash shell
$ bash --version
-
Homebrew Health
$ brew doctor
-
Gnu Utils Installed + Configured
$ date --version | grep -i gnu || ( which date && echo 'date GNOT GNU!' )
-
Git Installed + Configured
$ git version ; git config --list
-
-
What is git:
- Git is versioning software used by software developers to version code or any type of file.
-
Who made git:
- In the 1990's, Linus Torwalds built git to support his open source software project, the linux ketnel.
-
Why learn git:
- Because versioning files and folders on our computers allows us to protect / retain / share all of our work.
- Because git supports all kinds of files, including very large files.
- Because git is the local command-line client to the many services that run on github.com.
-
What is github:
- Github.com is a web site built to help devs share and collaborate in public or private software code projects.
-
Why learn github:
-
Because all kinds of tools across dev languages are available on github for free, including the git source code itself.
-
Because team dev using local git and remote github is how most remote dev work is tested, reviewed and submitted.
-
Because github makes open source software development collaborative.
-
Because github.com automation and AI tools are excellent.
-
Common Github Quick Start Hurdles Include:
-
- We want to verify that the gnu tools are running:
$ date --version | grep -i gnu
- bash
$ bash --version
- git
$ git version; git config --list
- python3
$ python3 --version; python3 -m platform
-
Print out this diagram and inquire about workflow cycles, step testing and step undo options.
-
Git Ops Skill Levels:
-
1: Git Ops Solo Local => See Solo Local Workflow Cycle Diagram !!
-
2: Git Ops Solo Remote
-
3: Git Ops Team Dev
-
4: Git Ops Teams Admin
-
- Git Ops Skills Matrix
- Open Source Git + Github Training Skill Levels Table
Skills Level | Descriptions | Git Sub-Commands |
---|---|---|
1 | Solo Local Git Ops | version config status init add rm mv commit sha log diff reset stash amend |
2 | Solo Remote Git Ops | clone pull push fork patch issue branch tag merge rebase |
3 | Team Dev Git ops | diff tdd mfa4 bashTests bashLogs bashTpls |
-
Prereqs
-
Report any system stability issues and/or browser stability issues.
-
Install + configure local git.
-
Register for a free github id and connect to github.
-
NOTE: ssh must be set up right in order to push code to a github project. (level 2 git ops training)
-
-
1: Jump into gitpod, unless browser issues get in the way.
-
Prerequisites: github free account + stable browser login to github
-
Get Started: Request scheduled 30 minute bash paired programming session using gitpod.
-
What Will We Do?
-
-
Start with a gist like this to learn some basic github markdown (ghmd).
-
Use bash and git and vscode together in a gitpod session.
-
Show how our session changes can be tracked and versioned in a github repo.
-
Barter for paving services (gives) while you learn to drive (gets).
-
Drive the entire process with docs and testing.
-
Diagram the entire process for accelerated training.
-
Create git ops docs using ghmd on github for the Win crowd.
-
Enable github pages for that repo, and choose a jekyll theme.
-
Look at i18n tools for Github Pages.
-
-
2: There are also git learning playgrounds/games:
- 3: Standing up vm with vbox running ubuntu is another option.
- Prerequisites: virtualBox
- Get Started:
- Install vBox locally.
- Restart desktop.
- Create local vBox virtual machine (vm).
- Deploy Linux Image on vm. (or Windows!!)
- Connect to linux running on vm using ssh from Git4Windows console.
- Find free windows terminal apps.
- 4: Git4Win is better than WSL until proven otherwise.
- Prerequisites: Might be wise to mess with a windows vm on vBox?
- Get Started: Since Git4Win can be completely installed into WIN_USER storage, it is easy to remove COMPLETELY!!
- The ssh key generate + configs + connect2github tests are usually the most troublesome.
- NOTE:
- Devs can get started with Level 1 of 3 with ANY of the above setups.
- Admins should have all of these running
- devs can use any
- admins should use all
- Learn about github doc formatting style guides.
- 1: Linux or OSX Terminal Running Bash + Git
- 2: Code Editor
- 3: Chrome Browser With Tabs
- 4: Desktop File Explorer
- All four tools above ought to be TILED as indicated below!!!
Desktop File Explorer | Terminal Console |
Code Editor | Chrome Browser |
- This is verified by way of a screenshot:
-
bash:
$ bash --version; cat ~/.bash_profile
-
git:
$ git version; git config --list
-
ssh:
$ ssh --version ; ls ~/.ssh/
-
Microsoft Roadmap in 2023: github + azure
-
Remember that most win users know NONE of this stuff, and msoft NOW OWNS github!!
-
Microsoft now owns github and azure.
- Microsoft staff will be migrating their sofwtare projects from VisualSourceSafe to Github over the next several years.
- Several github competitors exist:
- bitbucket.org
- gitlab.com
- gogs
-
Bartering start with creating a bartering ladder, where trading is of mutual interest.
-
Admins could trade GIVES ( training ) for GETS ( docs + testing + code reviews ).
-
Admins could perhaps trade training for free cloud hosting credits.
- microsoft azure:
- digital ocean:
- amazon web services:
-
This public gist is an ad hoc type of github repo.
- Like any public github repo, this gist can be forked on gitub and cloned to your local desktop.
-
Files in this gist:
-
4: Create code team dev dojo for github project team testing.