unison/unison-src/transcripts/branch-command.output.md
Greg Pfeil 0031542faf
Add a space before code block info strings
This is for consistency with the `cmark` style. Now the blocks we still
pretty-print ourselves will match the bulk of them that `cmark`
produces.
2024-07-10 13:56:07 -06:00

4.5 KiB

The branch command creates a new branch.

First, we'll create a term to include in the branches.

someterm = 18
scratch/main> builtins.merge lib.builtins

  Done.

scratch/main> add

  ⍟ I've added these definitions:
  
    someterm : Nat

Now, the branch demo:

branch can create a branch from a different branch in the same project, from a different branch in a different project. It can also create an empty branch.

foo/main> branch topic1

  Done. I've created the topic1 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic1`.

foo/main> branch /topic2

  Done. I've created the topic2 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic2`.

foo/main> branch foo/topic3

  Done. I've created the topic3 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic3`.

foo/main> branch main topic4

  Done. I've created the topic4 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic4`.

foo/main> branch main /topic5

  Done. I've created the topic5 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic5`.

foo/main> branch main foo/topic6

  Done. I've created the topic6 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic6`.

foo/main> branch /main topic7

  Done. I've created the topic7 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic7`.

foo/main> branch /main /topic8

  Done. I've created the topic8 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic8`.

foo/main> branch /main foo/topic9

  Done. I've created the topic9 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic9`.

foo/main> branch foo/main topic10

  Done. I've created the topic10 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic10`.

foo/main> branch foo/main /topic11

  Done. I've created the topic11 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic11`.

scratch/main> branch foo/main foo/topic12

  Done. I've created the topic12 branch based off of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /topic12`.

foo/main> branch bar/topic

  Done. I've created the bar/topic branch based off foo/main.

bar/main> branch foo/main topic2

  Done. I've created the bar/topic2 branch based off foo/main.

bar/main> branch foo/main /topic3

  Done. I've created the bar/topic3 branch based off foo/main.

scratch/main> branch foo/main bar/topic4

  Done. I've created the bar/topic4 branch based off foo/main.

foo/main> branch.empty empty1

  Done. I've created an empty branch foo/empty1.
  
  Tip: Use `merge /somebranch` to initialize this branch.

foo/main> branch.empty /empty2

  Done. I've created an empty branch foo/empty2.
  
  Tip: Use `merge /somebranch` to initialize this branch.

foo/main> branch.empty foo/empty3

  Done. I've created an empty branch foo/empty3.
  
  Tip: Use `merge /somebranch` to initialize this branch.

scratch/main> branch.empty foo/empty4

  Done. I've created an empty branch foo/empty4.
  
  Tip: Use `merge /somebranch` to initialize this branch.

The branch command can create branches named releases/drafts/* (because why not).

foo/main> branch releases/drafts/1.2.3

  Done. I've created the releases/drafts/1.2.3 branch based off
  of main.
  
  Tip: To merge your work back into the main branch, first
       `switch /main` then `merge /releases/drafts/1.2.3`.

foo/main> switch /releases/drafts/1.2.3

The branch command can't create branches named releases/* nor releases/drafts/*.

foo/main> branch releases/1.2.3

  Branch names like releases/1.2.3 are reserved for releases.
  
  Tip: to download an existing release, try
       `clone /releases/1.2.3`.
  
  Tip: to draft a new release, try `release.draft 1.2.3`.

foo/main> switch /releases/1.2.3

  foo/releases/1.2.3 does not exist.