Skip to content

bash stuffs #15

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 30 additions & 3 deletions part_2/2.1_bash.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,46 @@
# Introduction to the Terminal

### Windows
## What is Unix

Windows has a number of options for utilizing bash, which is normally a Linux command line environment. We will cover a few of them and expect you to simply remember that when we say to go to the CLI or run something "in bash," that we mean open your chosen bash environment.

We discuss some options from simplest to most complex. Be prepared to read documentation, not because we're too lazy to show you exactly how to install everything, but because of a very important lesson you should learn early in your journey: using a computer effectively requires reading and understanding new things, and programming is no different. This is a lot like learning how to do maintenance on your house or unclog your kitchen sink, and it's fun and healthy to work through.

Don't worry, there's lots of information out there to work through this comfortably.
#### git-bash
The simplest and thus recommended for newcomers option is to install git-bash, which will come with Git as well (see next steps). You can go [here](https://git-scm.com/downloads) to download Git for windows and choose the "git-bash" option when running the installer.

#### cmder
A more complicated but still useful option for getting into command line is [cmder](https://cmder.net) which is a powerful command line environment. If you download the "Full" installation it will have everything you need, including git (see next steps) if you prefer that version. By default it starts with a windows command terminal, but you can open a bash terminal tab or configure the default behavior to start with bash as well.

#### Windows Subsystem for Linux (WSL)
This is not for the faint of heart, as it is both the most complicated and the most powerful, but eventually most Windows developers working with Go will end up here. Don't jump ahead if you're new to deep Windows system administration. Assuming you are on Windows 10 and can update to the latest version as of early 2021, you can use what's called WSL2 if you are googling for information. This allows you to run a full Linux installation with a separate filesystem that integrates well with a lot of tooling like Visual Studio Code.

We'll leave installation instructions as an exercise for you, since you will need the skills to find that information if you're going to be successufl in running WSL2 anyway.
### Linux

### MacOS
I recomend downloading iTerm2
I recommend downloading iTerm2

## Windows

## Introduction to Bash and the .bashrc

### aliases

### helpful commands
## Commands
* cd
* pwd
* echo
* cp
* mv
* ls
* mkdir
* | grep

## Writing a bash script

## Additionals Resources
*

[Next Section](/part_2/2.2_git.md)
3 changes: 3 additions & 0 deletions part_2/2.2_git.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# Git

## What is Source Control?
Source control is a way of capturing history of a collection of text files in a way that can be collaborated upon. It is pretty easy to think of it as if you were saving every "undo" step when editing a document or spreadsheet into a log, and then sharing that log with others editing the same thing alongside you.

There's a lot to dive into there that won't matter at this juncture, so for now while you work on your own repo alone, it's worth just keeping in mind that it's just version history you can interact with as you need to.

## Install git
It is time to open your terminal and install [git](https://git-scm.com/downloads). Although version control can be run through many IDEs and some text editors like VSCode, it is really go to get familiar with the CLI commands.
Expand Down
15 changes: 12 additions & 3 deletions part_2/2.3_installing_go.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,18 @@
# Installing Go

## From Binary

## From Source
## Windows
### From Binary
The easiest way to install Go is by going to [the install page](https://golang.org/doc/install) and downloading and running the installer. It will setup your path and everything for you.

## Establishing your gopath
If you know what Chocolatey is and already have it installed, you can also use it to install go via the `golang` package, but this is not recommended.

Once installed, restart your bash terminal entirely and `go version` should work in your new terminal.

## Linux
### From Binary
### From Source

### Establishing your gopath

## Test program
3 changes: 3 additions & 0 deletions part_2/2.4_pick_your_IDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@

## Installing VSCode

### Windows
The easiest way to get VSCode on Windows is download the installer from [their website](https://code.visualstudio.com/) and follow the instructions. Remember to restart any terminals you wish to use the `code` command from after you've installed it.

## Installing Go plugins

## Setting Up Dev Environment