If you've ever seen a developer typing into a black screen with white text and thought "I could never do that", this post is for you. That black screen is called a terminal, and by the end of this, you'll be using it like it's nothing.
We won't touch Git yet. First, you need to feel comfortable in the environment where Git lives.
What you'll be able to do after this: Open a terminal, understand what you're looking at, and navigate your computer using only your keyboard. No mouse needed.
What is a terminal?
Your computer has two ways to take instructions from you. The one you already know is the GUI which is Graphical User Interface. That's when you click folders, drag files, and use your mouse. It's visual and friendly.
The terminal is the other way. It's a text-only window where you type instructions directly to your computer. No clicking. Just words.
| GUI (what you know) | Terminal (what you're learning) |
|---|---|
| Double-click a folder to open it. Drag files around. Right-click to rename. | Type cd Documents to open a folder. Type commands to move, rename, create files. |
Same computer. Same files. Just a different way to talk to it. Developers prefer the terminal because it's faster, more powerful, and works the same way on every machine in the world.
Terminal vs Shell - What is the difference?
People use these words interchangeably but they mean different things. Here's the simple version:
The terminal is the window — the application you open on your screen. The shell is the program running inside that window that actually understands your commands and talks to the operating system.
Think of it like this: the terminal is the phone, the shell is the person on the other end who actually does what you ask.
| SHELL | WHERE YOU'LL SEE IT | NOTES |
|---|---|---|
| Git Bash | Windows | This is what we'll use in this series |
| Zsh | macOS | Open "Terminal" from spotlight |
| Powershell | Windows | Some commands differ slightly |
| Bash | Linux | You probably already known what to do |
The commands in this series are written for Git Bash on Windows. If you're on Mac, open your Terminal app almost all of the commands are identical.
Reading the prompt
When you open a terminal, the first thing you see is the prompt. It's the line that waits for you to type. It looks something like this:
seth@DESKTOP MINGW64 ~/Documents
$
Breaking that down:
| Your username |
| The shell environment (Git Bash specific - ignore it) |
| Where you currently are on your computer. |
| The prompt symbol. It just means "ready, type here." On some shells you'll see % instead or other symbols based on your customizations |
The prompt always tells you where you are. That's important. In the terminal, location matters. Every command you run happens in the folder you're currently in.
Why developers use the terminal
Fair question. Clicking folders works fine, so why bother learning this?
Three reasons:
Speed.
Once you know the commands, you move ten times faster than clicking through menus. Creating 10 folders takes one command. Renaming 50 files? One command.
Power.
Some things are simply impossible in a GUI. Servers don't have screens. Remote machines don't have mouse support. The terminal is how professionals control those environments.
Git requires it.
And Git is why you're here. Git runs in the terminal. There's no way around it.
Your first three commands
Enough theory. Open your terminal and try these. Go slowly — type each one and press Enter.
pwd - where am I?
stands for "print working directory." It tells you exactly which folder you're currently in.
$ pwd
/c/Users/Seth
That output is your current location. Think of it as your GPS coordinates inside your computer.
ls - what's in here?
Stands for "list." It shows you everything inside your currently folder.
$ ls
Desktop/ Documents/ Downloads/ Music/ Pictures/
Folders end with a
/. Files don't. That's how you tell them apart in the terminal.
cd - move somewhere
Stands for "change directory." It's how you move between folders.
$ cd Documents
$ pwd
/c/Users/Seth/Documents
$ cd ..
$ pwd
/c/Users/Seth
the two dot .. always means "one level up." That's how you go back
Mini challenge: Open your terminal, run
pwdto see where you start, runlsto see what's there, thencdinto one of those folders. Come back out withcd ... Do that three times without looking at this post.
Quick reference
| show your currently location |
| List files and folders in the currently directory |
| Move into a folder |
| Go back one level |


