Artifact Content
Not logged in

Artifact c1f7d034eab99b083547f6059cdd93c9ef6da6e3

Wiki page [fossil ls] by kejoki on 2008-11-09 20:52:27.

D 2008-11-09T20:52:27
L fossil\sls
P 94ab3d8aa3dc591da23f0935529708c090a2eeb2
U kejoki
W 2143
<h2>ls</h2>

The <code>ls</code> command is informational, it doesn't do anything to
a checked-out project, but it tells you something about it.

A project consists of a "source tree" of "artifacts" (see <a href="doc/tip/www/concepts.wiki">Fossil concepts</a>.)
From a practical standpoint this is a set of files and directories rooted
at a main project directory.  The files that are under source control aren't
particularly distinguishable from those that aren't.  The <code>ls</code> and
<code>extra</code> commands provide this information.

<code>fossil ls</code> produces a listing of the files which are under source
control <i>and</i> their status within the repository.  The output is a simple
list of STATUS/filepath pairs on separate lines.  The status of a file will
likely be one of ADDED, UNCHANGED, UPDATED, or DELETED.

It's important to realize that this is the status <i>relative to the repository</i>,
it's the status as <b>fossil</b> sees it and has nothing to do with
filesystem status.  If you're new to source-management/version-control
systems, you'll probably get bit by this concept-bug at least once.

To really see the difference, issue an <code>ls</code> before and after doing
a <code>commit</code>.  Before, the status of files may be any of the three,
but after <code>commit</code>ting changes the status will be UNCHANGED "across
the board."

By way of example, here's what I see if I <code>fossil ls</code> in the
directory where I have checked out my testing repository:
<nowiki><pre>
    $ fossil ls
    ADDED     feegboing
    UNCHANGED fossil_docs.txt
    DELETED   nibcrod
</pre></nowiki>
But if I do a simple ls, what I get is
<nowiki><pre>
    $ ls
    feegboing  fossil_docs.txt  manifest.uuid  noodle.txt
    _FOSSIL_   manifest         nibcrod
</pre></nowiki>

The <code>ls</code> command is almost, but not quite entirely, the exact
opposite of the
<a href="wiki?name=fossil+extra"><code>extra</code> command</a>.

See also: [fossil add], [fossil rm], [fossil extra], [fossil commit], <a href="doc/tip/www/concepts.wiki">Fossil concepts</a>, [Reference]
Z 1dffec049b18aee15b35fb0d459a8213