Reference

Glossary

Developer Tools Git, GitHub & GitHub Copilot

Glossary

Every important term from the tutorial, in plain language. The module where a term is first explained is noted in parentheses.

Repository (repo)

A project tracked by Git: your files plus a hidden .git folder holding the entire history. (Mod 1, 3)

.git folder

The repository’s actual database — objects, refs, HEAD, index, config, hooks, logs. Delete it and the project becomes a plain folder. (Mod 4)

Commit

One saved snapshot of your project, with a unique hash, author, date, and message. The unit of history. (Mod 1, 3)

Snapshot

Git’s mental model for what a commit stores: a complete photo of the project at a moment, not a list of edits. (Mod 1)

Hash (SHA)

A 40-character fingerprint computed from content. Same content → same hash; it’s how Git addresses every object. (Mod 1, 4)

Branch

A movable pointer to a commit; physically a one-line file in .git/refs/heads/. Lets you work in isolation. (Mod 1, 5)

HEAD

“Where you are now” — a pointer (usually to a branch) for the commit your working directory reflects. (Mod 3, 4)

Parent

The commit that came before a given commit. Merge commits have two parents. (Mod 1)

Distributed (DVCS)

Every clone holds the full history, so you can work offline and each copy is a backup. (Mod 1)

Working directory

The real files you see and edit. (Mod 3)

Staging area / Index

The “loading dock” where you gather exactly what goes into the next commit; physically the .git/index file. (Mod 3, 4)

Repository (committed history)

The permanent snapshots stored in .git. (Mod 3)

Blob

Stores the raw contents of one file (no name, no path). (Mod 4)

Tree

A directory listing: names → blob/tree hashes plus permissions. Represents a folder. (Mod 4)

Commit object

Points to a root tree, parent commit(s), author info, and message. (Mod 4)

Tag object

An annotated tag pointing to a commit, with its own metadata. (Mod 4, 9)

Content-addressed

Objects are named by the hash of their content, so identical content is stored only once. (Mod 4)

Loose object

A single compressed object file in .git/objects/ab/cdef.... (Mod 4)

Packfile

Many objects bundled and compressed together by git gc into .git/objects/pack/. (Mod 4)

Garbage collection (git gc)

Periodic cleanup that packs loose objects and eventually removes unreferenced ones. (Mod 4, 8)

HEAD

Points to the current branch (or a commit, when “detached”). (Mod 4)

config

The repository’s local settings and remotes. (Mod 4)

index

The staging area, in binary form. (Mod 4)

refs/

Folder of pointer files: heads/ (branches), tags/, remotes/. (Mod 4)

logs/

Records every position HEAD has held; powers the reflog. (Mod 4, 8)

hooks/

Scripts Git runs automatically at events (pre-commit, pre-push, etc.). (Mod 4, 9)

ORIG_HEAD

A bookmark of where HEAD was before a big operation, for easy recovery. (Mod 4)

packed-refs

Many refs compressed into one file for efficiency. (Mod 4)

info/exclude

A personal, uncommitted ignore list. (Mod 4, 9)

Bare repository

A repo with only .git contents and no working files; what servers use. (Mod 4)

init

Create a new repository (.git folder). (Mod 3)

clone

Download a full copy of a remote repository once. (Mod 6)

add

Stage changes for the next commit. (Mod 3)

commit

Save staged changes as a snapshot. (Mod 3)

status / diff / log

See pending changes / line-level changes / history. (Mod 3)

branch / switch / checkout

List/create branches and move between them. (Mod 5)

merge

Combine another branch into the current one, sometimes via a merge commit. (Mod 5)

rebase

Replay your commits onto another branch for a linear history; never on shared commits. (Mod 5)

push / fetch / pull

Upload commits / download without merging / download and merge. (Mod 6)

reset

Move the branch pointer back: --soft (keep staged), --mixed (keep unstaged), --hard (discard). (Mod 8)

restore

Unstage a file or discard working-directory changes. (Mod 8)

revert

Add a new commit that undoes an earlier one; safe for shared history. (Mod 8)

reflog

Show the history of HEAD’s movements; the recovery safety net. (Mod 8)

stash

Temporarily shelve uncommitted changes. (Mod 9)

tag

Mark a commit with a permanent name (e.g. a release version). (Mod 9)

cherry-pick

Copy a single commit onto the current branch. (Mod 9)

bisect

Binary-search history to find the commit that introduced a bug. (Mod 9)

blame

Show who last changed each line and in which commit. (Mod 9)

clean

Delete untracked files (not recoverable — use -n first). (Mod 8)

Remote

Another full copy of a repo, usually on GitHub; the default is origin. (Mod 6)

origin

The conventional name for the default remote. (Mod 6)

upstream

Convention for the original repo when you’ve forked it. (Mod 7)

origin/main

Your locally cached view of the remote’s branch; updates only when you sync. (Mod 6)

Tracking branch

A local branch linked to a remote branch for easy push/pull. (Mod 6)

Fork

Your own full copy of someone else’s repo, for contributing without write access. (Mod 7)

Pull request (PR)

A GitHub proposal to review and merge a branch’s commits. (Mod 7)

Issue

A GitHub thread tracking a task, bug, or feature. (Mod 7)

Code review

Line-by-line feedback on a PR before merging. (Mod 7)

Squash / merge / rebase merge

GitHub’s three ways to merge a PR (combine into one commit / merge commit / linear replay). (Mod 7)

GitHub Actions

Automation (CI/CD) defined as YAML in .github/workflows/. (Mod 7)

Continuous Integration (CI)

Automatically testing every push/PR to catch breakage early. (Mod 7)

.gitignore

Lists files Git should not track; only affects untracked files. (Mod 3, 9)

Submodule

Another Git repo embedded at a pinned commit inside yours. (Mod 9)

Hook (Husky / pre-commit)

Scripts run at Git events; tools that share hooks across a team. (Mod 9)

SSH key / PAT

Credentials for authenticating to GitHub (key pair / personal access token). (Mod 2)

GitHub Copilot

An AI pair programmer (an LLM wired into your tools) that suggests, explains, and writes code. (Mod 10)

LLM (Large Language Model)

The AI model under the hood that generates text/code. (Mod 10)

Token

The unit of text the model processes; roughly ¾ of a word. Context size is measured in tokens. (Mod 13)

Code completions

Inline “ghost text” suggestions as you type. (Mod 10)

Chat

Conversational Q&A with Copilot about your code. (Mod 10)

Agent mode

Copilot autonomously plans and performs multi-step tasks (editing files, running commands). (Mod 10)

Copilot coding agent

A cloud agent you assign an issue; it works in the background and opens a PR. (Mod 10)

Custom instructions

Persistent files Copilot folds into requests so you don’t repeat rules. (Mod 11)

copilot-instructions.md

The repo-wide instruction file at .github/copilot-instructions.md, applied to everyone. (Mod 11)

*.instructions.md

Path-scoped instruction files using an applyTo glob to target specific files. (Mod 11)

applyTo

Frontmatter glob that limits a path-specific instruction to matching files. (Mod 11)

Prompt file (*.prompt.md)

A reusable, invokable command capturing a repeated task. (Mod 11)

AGENTS.md

A cross-tool standard file giving AI agents project guidance. (Mod 11)

Instruction layers / priority

Personal → path-scoped → repo-wide → AGENTS.md → org; all merge, higher wins on conflict. (Mod 11)

Skill

A folder of on-demand expertise centered on a SKILL.md file, loaded only when relevant. (Mod 12)

SKILL.md

A skill’s entry file: YAML frontmatter (name, description, optional fields) plus an instructions body. (Mod 12)

description (skill)

The frontmatter field Copilot matches against your request to decide whether to load the skill. (Mod 12)

Progressive disclosure

Staged loading of skills: L1 name+description (always) → L2 full body (on match) → L3 resources (on demand). (Mod 12)

Model-invoked / user-invoked

A skill chosen automatically by description match vs. called explicitly by name. (Mod 12)

allowed-tools

Frontmatter listing tools a skill may use without per-use confirmation. (Mod 12)

MCP server / tool

A connector giving Copilot capabilities to act on external systems; complements skills. (Mod 12)

Context window

Copilot’s finite short-term working memory (in tokens) for one session — prompt, code, instructions, skills, memories. (Mod 13)

Compaction

Automatic summarizing of older conversation (around 80% capacity) so long sessions can continue. (Mod 13)

Copilot Memory

A GitHub-hosted, repo-scoped long-term memory; Copilot saves, validates, refreshes, and expires facts (~28 days unused). (Mod 13)

Progressive disclosure vs. memory vs. instructions

On-demand expertise vs. auto-learned facts vs. always-on rules; all flow through the context window. (Mod 13)

Secret

Any credential that grants access (password, API key, token, private key, .env); never commit it. (Mod 15)

Secret rotation

Revoking a leaked credential and issuing a new one; always do this before scrubbing history, since a pushed secret may already be copied. (Mod 15)

git filter-repo

The recommended tool to rewrite history and purge a file (e.g. a leaked secret) from every commit; requires a force-push. (Mod 15)

Signed commit

A commit cryptographically signed (GPG/SSH) so GitHub can show a Verified badge proving authorship. (Mod 2, 15)

Two-factor authentication (2FA)

A second sign-in factor (authenticator app, passkey) beyond a password; the top account protection. (Mod 15)

Passkey

A phishing-resistant, passwordless sign-in credential. (Mod 15)

Branch protection / ruleset

Enforced rules on a branch: require PRs, approvals, passing checks, signed commits; block force-pushes and deletion. (Mod 15)

Bypass actor

A user granted a narrow exception to a ruleset. (Mod 15)

Secret scanning

GitHub feature that detects committed secrets and alerts you. (Mod 15)

Push protection

Blocks a push that contains a recognized secret before it enters history. (Mod 15)

Dependabot

GitHub feature that alerts on vulnerable dependencies and opens PRs to update them. (Mod 15)

Code scanning (CodeQL)

Static analysis that finds vulnerability patterns in your code and flags them on PRs. (Mod 15)

GitHub Advanced Security (GHAS)

The bundle of advanced security features (secret scanning, code scanning, etc.) for private/enterprise repos. (Mod 15)

Supply-chain security

Protecting against risks from third-party code and actions (e.g. pinning Actions to a commit SHA, least-privilege permissions). (Mod 15)

Insecure code generation

The risk that AI-suggested code contains vulnerabilities (injection, weak crypto, hard-coded secrets). (Mod 15)

Prompt injection

An attack where malicious instructions hidden in content the agent reads hijack its behavior; includes the “Rules File Backdoor” and RoguePilot-class attacks. (Mod 15)

Defense in depth

Layering controls (prevent → detect → block → review → recover) so no single failure is catastrophic. (Mod 15)

Back to the index.