dream docs

Basics

Make a repo from a folder

cd your-project
dream init -submit -m first

Makes the folder a repo and lands every file as c-1.

dream init -import

Same, for a git repo: brings in its history.

Ignore files

.dreamignore uses .gitignore syntax; .gitignore is read too.

See what you changed

dream status

Changed files.

dream diff

The diff of your changes.

Land your changes

dream submit -m "add the parser"

Lands the changes as the next changeset (c-N). Add paths to land only those.

Read history

dream log

Changesets, newest first. -p adds each diff; a path limits it to that file.

dream show c-7
dream show -at c-3 README.md
dream blame src/parser.go

A changeset and its diff; a file at c-3; who last touched each line.

Bring in what others landed

dream update

Moves to head and merges your edits line by line. On a clash, edit out the <<<<<<< / ======= / >>>>>>> lines, then dream submit.

Throw away edits

dream restore README.md

Puts the last landed version back.

Undo a landed changeset

dream revert c-2

Lands the inverse of c-2.

Work on several changes

dream change new fix-parser
dream changes
dream switch main
dream change rm fix-parser

Start a change (current edits go with it); list changes; switch to another; drop one.

Save without landing

dream save -m wip
dream drafts

Saves your edits as a draft (d-N); lists drafts.

Get a second copy

dream checkout your-project ../copy

Another working copy at head.

Next: Decisions.