How we keep our work safe, versioned, and off a single laptop — using git, GitHub, and Claude Code to do the heavy lifting.
Git and GitHub are two halves of one idea: never lose your work, and always be able to go back.
Two words you'll use constantly:
You do this once per computer. The tool that runs the commands for you is Claude Code — you tell it what you want in plain English.
In Terminal:
curl -fsSL https://claude.ai/install.sh | bash
Then open a new Terminal window and check it worked:
claude --version
claude in ~/.local/bin, which your shell may not look in yet. Fix it once, then open a new window:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrcThis same line also makes the GitHub tool
gh work, since it lives in the same place.Claude Code needs a paid Claude plan — the same account you use for Cowork.
Go to your project folder and start Claude Code:
cd ~/Documents/Claude claude
The first run asks you to pick a theme and sign in (a browser opens — approve it). Then tell it:
Now you have version history on your machine.
Still in Claude Code, tell it:
ioi-workspace under my account and push everything to it. If the GitHub CLI isn't set up, install it and run gh auth login."The only step it can't do for you is the GitHub sign-in, because that's GitHub's own security:
gh auth login and shows a one-time code (e.g. BBAD-FC99).After that it creates the repo and pushes. Your work is now private, versioned, and safely on GitHub.
Once set up, keeping GitHub current is one sentence. After you've made changes, open Claude Code in the folder and say:
That's the whole loop: change your files → tell Claude Code to commit and push. It writes the message, saves the version, and sends it up.
If you ever want to do it by hand, it's three lines:
git add -A git commit -m "what I changed" git push
git add -A — line up every change to be saved.git commit -m "…" — save the version with a note.git push — send it to GitHub.Rule of thumb: commit little and often — end of a task, before a big change, before lunch. Each commit is a point you can safely return to.
command not found: claude or gh — the ~/.local/bin PATH line (see setup) isn't in your shell yet. Add it to ~/.zshrc and open a new window..lock file — a previous git action didn't finish cleanly. Remove the stray locks and try again:
find ~/Documents/Claude/.git -name '*.lock' -delete