Blame Manual/Filesystem/trunk.texi

9bfd15
@subsection Goals
9bfd15
9bfd15
This directory implements the Subversion's trunk concept in a
9bfd15
trunk, branches, tags repository structure.
9bfd15
9bfd15
@subsection Description
9bfd15
9bfd15
The @file{trunk/} directory structure is the main development line
9bfd15
inside the CentOS Artwork Repository. Here is where we produce the
9bfd15
information required by The CentOS Project corporate visual identity.
9bfd15
Additionally, here is where documentation and automation scripts are
9bfd15
conceived to make both understanding and using of CentOS Artwork
9bfd15
Repository easier for everyone.
9bfd15
9bfd15
The @file{trunk/} directory structure covers the following topics:
9bfd15
9bfd15
@table @strong
9bfd15
@item Identity
9bfd15
This directory organizes the production of images in different formats
9bfd15
and some non-image formats like XHTML and text files, as well. This is
9bfd15
the perfect place to consolidate @emph{The CentOS Artwork SIG}. If you
9bfd15
are interested in producing art works for The CentOS Project, this
9bfd15
place is for you. 
9bfd15
9bfd15
@xref{Filesystem trunk Identity}, for more information.
9bfd15
9bfd15
@item Documentation
9bfd15
This directory organizes the production of @emph{CentOS Artwork
9bfd15
Repository Manual} (i.e., the place where the documentation you are
9bfd15
reading right now is stored in).  If you are interested on improving
9bfd15
The CentOS Artwork Repository Manual, in this place you'll find the
9bfd15
Texinfo documentation structure you need to work with.
9bfd15
9bfd15
@xref{Filesystem trunk Manual}, for more information.
9bfd15
9bfd15
@item Localization
9bfd15
This directory organizes translation messages specifically produced to
9bfd15
satisfy internationalization needs inside the CentOS Artwork
9bfd15
Repository. This place is perfect to consolidate @emph{The CentOS
9bfd15
Translation SIG}. If you love translating, you'll find lot of messages
9bfd15
waiting for you to translate here.  
9bfd15
9bfd15
@xref{Filesystem trunk Locales}, for more information.
9bfd15
9bfd15
@item Automation
9bfd15
This directory organizes the production of @command{centos-art}, a
9bfd15
command-line interface specially designed to automate most frequent
9bfd15
tasks in the repository (e.g., image rendition, documenting directory
9bfd15
structures, translating content, etc.).  If you can't resist the idea
9bfd15
of automating repeatable tasks, then take a look here.
9bfd15
9bfd15
@xref{Filesystem trunk Scripts}, for more information.
9bfd15
@end table
9bfd15
9bfd15
@subsection Usage
9bfd15
9bfd15
When we need to create branches or tags, the @file{trunk/} directory
9bfd15
structure is the one used as reference to build them. Take a look at
9bfd15
the following directory structure construction and notice how the
9bfd15
@file{/Scripts/Bash/Cli} string is repeated in the paths and how it is
9bfd15
put on it:
9bfd15
9bfd15
@table @file
9bfd15
@item trunk/Scripts/Bash/Cli
9bfd15
9bfd15
This directory structure provides the main development line of the
9bfd15
@file{centos-art} command-line interface written in bash. In this
9bfd15
directory changes may occur pretty fast and in unpredicted ways. This
9bfd15
configuration could provoke that the @file{centos-art} command-line
9bfd15
stop working in a manner unprediceted due the way changes are
9bfd15
introduced to it.
9bfd15
9bfd15
@item branches/Scripts/Bash/Cli/1
9bfd15
9bfd15
This directory structure, however, provides an intermediate place for
9bfd15
less unpredicted changes and that way to provide more stability than
9bfd15
@file{trunk/} directory structure is able to provide. 
9bfd15
9bfd15
Notice that we used a number to identify the branch (the number `1' in
9bfd15
this case).  Changing this number we could create several branches
9bfd15
that could be maintained at the same time to fix specific problems
9bfd15
simultaneausly otherwise difficult to fix in an unpredictable area
9bfd15
like that provided by @file{trunk/} directory structure.  Once the
9bfd15
specific problems has been fixed, the branch is merged into
9bfd15
@file{trunk/} and removed from the repository file system.
9bfd15
9bfd15
If you are the only person working in the repository, you probably
9bfd15
don't want to worry about creating branches at all and prefer going
9bfd15
straight from trunk to tags. Ask yourself: If I'm the only person
9bfd15
working in the trunk directory structure whom else could introduce
9bfd15
unpredictable changes but myself? In that case, such changes wouldn't
9bfd15
be unpredictable at all, don't you think? 
9bfd15
9bfd15
@item tags/Scripts/Bash/Cli/1.0
9bfd15
9bfd15
Instead of removing the branch directory structure from the repository
9bfd15
file system, it could be very convenient to create a check-point in
9bfd15
time with such problems fixed and so providing a predictable release
9bfd15
of the @file{centos-art} command-line interface.
9bfd15
9bfd15
Notice that we used the number 1.0 to store the tag. These means that
9bfd15
we are creating the tag number 0 from the branch numbered as 1 (i.e.,
9bfd15
the first number before the dot represents the branch number and the
9bfd15
second number after the dot represents the tag number).  
9bfd15
9bfd15
Using the @file{centos-art} command-line from tags diectory structure
9bfd15
does provide more stable results than those from branches or trunk
9bfd15
directory structures. The tags directory structure doesn't introduce
9bfd15
changes at all, so you are safe to get what you expect after reading
9bfd15
the release notes for that tag. This configuration is not possible
9bfd15
supported on trunk nor branches since they do change through time.
9bfd15
@end table
9bfd15
9bfd15
It seems to be no other immediate use for this directory but those
9bfd15
described above.
9bfd15
9bfd15
@subsection See also
9bfd15
9bfd15
@menu
9bfd15
* Filesystem branches::
9bfd15
* Filesystem tags::
9bfd15
@end menu
9bfd15