File Annotation
Not logged in
627de3bf16 2009-01-25       drh: #!/usr/bin/tclsh
627de3bf16 2009-01-25       drh: #
627de3bf16 2009-01-25       drh: # Run this to generate the FAQ
627de3bf16 2009-01-25       drh: #
627de3bf16 2009-01-25       drh: set cnt 1
627de3bf16 2009-01-25       drh: proc faq {question answer} {
627de3bf16 2009-01-25       drh:   set ::faq($::cnt) [list [string trim $question] [string trim $answer]]
627de3bf16 2009-01-25       drh:   incr ::cnt
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: faq {
627de3bf16 2009-01-25       drh:   What GUIs are available for fossil?
627de3bf16 2009-01-25       drh: } {
627de3bf16 2009-01-25       drh:   The fossil executable comes with a web-based GUI built in.  Just run:
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   <blockquote>
627de3bf16 2009-01-25       drh:   <b>fossil ui</b> <i>REPOSITORY-FILENAME</i>
627de3bf16 2009-01-25       drh:   </blockquote>
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   And your default web browser should pop up and automatically point to
627de3bf16 2009-01-25       drh:   the fossil interface.  (Hint:  You can omit the <i>REPOSITORY-FILENAME</i>
627de3bf16 2009-01-25       drh:   if you are within an open check-out.)
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: faq {
627de3bf16 2009-01-25       drh:   What is the difference between a "branch" and a "fork"?
627de3bf16 2009-01-25       drh: } {
627de3bf16 2009-01-25       drh:   This is a big question - too big to answer in a FAQ.  Please
627de3bf16 2009-01-25       drh:   read the <a href="branching.wiki">Branching, Forking, Merging,
627de3bf16 2009-01-25       drh:   and Tagging</a> document.
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: faq {
627de3bf16 2009-01-25       drh:   How do I create a new branch in fossil?
627de3bf16 2009-01-25       drh: } {
627de3bf16 2009-01-25       drh:   There are lots of ways:
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   When you are checking in a new change using the <b>commit</b>
627de3bf16 2009-01-25       drh:   command, you can add the option  "--branch <i>BRANCH-NAME</i>" to
627de3bf16 2009-01-25       drh:   make the change be the founding check-in for a new branch.  You can
627de3bf16 2009-01-25       drh:   also add the "--bgcolor <i>COLOR</i>" option to give the branch a
627de3bf16 2009-01-25       drh:   specific background color on timelines.
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   If you want to create a new branch whose founding check-in is the
627de3bf16 2009-01-25       drh:   same as an existing check-in, use this command:
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   <blockquote>
627de3bf16 2009-01-25       drh:   <b>fossil branch new</b> <i>BRANCH-NAME BASIS</i>
627de3bf16 2009-01-25       drh:   </blockquote>
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   The <i>BRANCH-NAME</i> argument is the name of the new branch and the
627de3bf16 2009-01-25       drh:   <i>BASIS</i> argument is the name of the check-in that the branch splits
627de3bf16 2009-01-25       drh:   off from.
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh:   If you already have a fork in your check-in tree and you want to convert
627de3bf16 2009-01-25       drh:   that fork to a branch, you can do this from the web interface.
627de3bf16 2009-01-25       drh:   First locate the check-in that you want to be
627de3bf16 2009-01-25       drh:   the founding check-in of your branch on the timeline and click on its
627de3bf16 2009-01-25       drh:   link so that you are on the <b>ci</b> page.  Then find the "<b>edit</b>"
627de3bf16 2009-01-25       drh:   link (near the "Commands:" label) and click on that.  On the
627de3bf16 2009-01-25       drh:   "Edit Check-in" page, check the box beside "Branching:" and fill in
627de3bf16 2009-01-25       drh:   the name of your new branch to the right and press the "Apply Changes"
627de3bf16 2009-01-25       drh:   button.
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: faq {
627de3bf16 2009-01-25       drh:   How do I create a private branch that won't get pushed back to the
627de3bf16 2009-01-25       drh:   main repository.
627de3bf16 2009-01-25       drh: } {
d6b8b5ba73 2009-08-26       drh:   Use the <b>--private</b> command-line option on the
d6b8b5ba73 2009-08-26       drh:   <b>commit</b> command.  The result will be a check-in which exists on
d6b8b5ba73 2009-08-26       drh:   your local repository only and is never pushed to other repositories.
d6b8b5ba73 2009-08-26       drh:   All descendents of a private check-in are also private.
d6b8b5ba73 2009-08-26       drh: 
d6b8b5ba73 2009-08-26       drh:   Unless you specify something different using the <b>--branch</b> and/or
d6b8b5ba73 2009-08-26       drh:   <b>--bgcolor</b> options, the new private check-in will be put on a branch
d6b8b5ba73 2009-08-26       drh:   named "private" with an orange background color.
d6b8b5ba73 2009-08-26       drh: 
d6b8b5ba73 2009-08-26       drh:   You can merge from the trunk into your private branch in order to keep
d6b8b5ba73 2009-08-26       drh:   your private branch in sync with the latest changes on the trunk.  Once
d6b8b5ba73 2009-08-26       drh:   you have everything in your private branch the way you want it, you can
d6b8b5ba73 2009-08-26       drh:   then merge your private branch back into the trunk and push.  Only the
d6b8b5ba73 2009-08-26       drh:   final merge operation will appear in other repositories.  It will seem
d6b8b5ba73 2009-08-26       drh:   as if all the changes that occurred on your private branch occurred in
d6b8b5ba73 2009-08-26       drh:   a single check-in.
d6b8b5ba73 2009-08-26       drh:   Of course, you can also keep your branch private forever simply
d6b8b5ba73 2009-08-26       drh:   by not merging the changes in the private branch back into the trunk.
d6b8b5ba73 2009-08-26       drh: }
627de3bf16 2009-01-25       drh: 
d6b8b5ba73 2009-08-26       drh: faq {
d6b8b5ba73 2009-08-26       drh:   How can I delete inappropriate content from my fossil repository?
d6b8b5ba73 2009-08-26       drh: } {
d6b8b5ba73 2009-08-26       drh:   See the article on [./shunning.wiki | "shunning"] for details.
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: #############################################################################
627de3bf16 2009-01-25       drh: # Code to actually generate the FAQ
627de3bf16 2009-01-25       drh: #
627de3bf16 2009-01-25       drh: puts "<h1 align=\"center\">Frequently Asked Questions</h1>\n"
627de3bf16 2009-01-25       drh: puts "<p>Note: See also <a href=\"qandc.wiki\">Questions and Criticisms</a>.\n"
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: puts {<ol>}
627de3bf16 2009-01-25       drh: for {set i 1} {$i<$cnt} {incr i} {
627de3bf16 2009-01-25       drh:   puts "<li><a href=\"#q$i\">[lindex $faq($i) 0]</a></li>"
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: puts {</ol>}
627de3bf16 2009-01-25       drh: puts {<hr>}
627de3bf16 2009-01-25       drh: 
627de3bf16 2009-01-25       drh: for {set i 1} {$i<$cnt} {incr i} {
627de3bf16 2009-01-25       drh:   puts "<a name=\"q$i\"></a>"
627de3bf16 2009-01-25       drh:   puts "<p><b>($i) [lindex $faq($i) 0]</b></p>\n"
627de3bf16 2009-01-25       drh:   set body [lindex $faq($i) 1]
627de3bf16 2009-01-25       drh:   regsub -all "\n *" [string trim $body] "\n" body
627de3bf16 2009-01-25       drh:   puts "<blockquote>$body</blockquote></li>\n"
627de3bf16 2009-01-25       drh: }
627de3bf16 2009-01-25       drh: puts {</ol>}