Artifact Content
Not logged in

Artifact 4f2f594a410ce3976071a008a4d6cd0e41f16968

File www/faq.wiki part of check-in [627de3bf16] - Documentation updates: Added FAQ and testimonials. by drh on 2009-01-25 21:16:55.

Frequently Asked Questions

Note: See also Questions and Criticisms.

  1. What GUIs are available for fossil?
  2. What is the difference between a "branch" and a "fork"?
  3. How do I create a new branch in fossil?
  4. How do I create a private branch that won't get pushed back to the main repository.

(1) What GUIs are available for fossil?

The fossil executable comes with a web-based GUI built in. Just run:
fossil ui REPOSITORY-FILENAME

And your default web browser should pop up and automatically point to the fossil interface. (Hint: You can omit the REPOSITORY-FILENAME if you are within an open check-out.)

(2) What is the difference between a "branch" and a "fork"?

This is a big question - too big to answer in a FAQ. Please read the Branching, Forking, Merging, and Tagging document.

(3) How do I create a new branch in fossil?

There are lots of ways:

When you are checking in a new change using the commit command, you can add the option "--branch BRANCH-NAME" to make the change be the founding check-in for a new branch. You can also add the "--bgcolor COLOR" option to give the branch a specific background color on timelines.

If you want to create a new branch whose founding check-in is the same as an existing check-in, use this command:

fossil branch new BRANCH-NAME BASIS

The BRANCH-NAME argument is the name of the new branch and the BASIS argument is the name of the check-in that the branch splits off from.

If you already have a fork in your check-in tree and you want to convert that fork to a branch, you can do this from the web interface. First locate the check-in that you want to be the founding check-in of your branch on the timeline and click on its link so that you are on the ci page. Then find the "edit" link (near the "Commands:" label) and click on that. On the "Edit Check-in" page, check the box beside "Branching:" and fill in the name of your new branch to the right and press the "Apply Changes" button.

(4) How do I create a private branch that won't get pushed back to the main repository.

You cannot. All branches in fossil are public in the sense that are all pushed and pulled together. There is no way to tell fossil to only push or pull a subset of branches.

Of course, as long as you never push, you can make as many private changes as you want.