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.