|
|
4c79b5 |
|
|
|
4c79b5 |
<html>
|
|
|
09d4f2 |
|
|
|
09d4f2 |
|
|
|
09d4f2 |
The CentOS Artwork Repository exists to organize and automate The
|
|
|
09d4f2 |
CentOS Project corporate visual identity (, to
|
|
|
09d4f2 |
start on).
|
|
|
4c79b5 |
|
|
|
6c4982 |
Copyright C 2009, 2010 Alain Reguera Delgado. All rights
|
|
|
4c79b5 |
reserved.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Permission is granted to copy, distribute and/or modify this document
|
|
|
4c79b5 |
under the terms of the GNU Free Documentation License, Version 1.2 or
|
|
|
4c79b5 |
any later version published by the Free Software Foundation; with no
|
|
|
4c79b5 |
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
|
|
|
4c79b5 |
copy of the license is included in the section entitled GNU Free
|
|
|
4c79b5 |
Documentation License.
|
|
|
4c79b5 |
-->
|
|
|
49151b |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
|
|
|
4c79b5 |
Karl Berry <karl@freefriends.org>
|
|
|
4c79b5 |
Olaf Bachmann <obachman@mathematik.uni-kl.de>
|
|
|
4c79b5 |
and many others.
|
|
|
4c79b5 |
Maintained by: Many creative people <dev@texi2html.cvshome.org>
|
|
|
4c79b5 |
Send bugs and suggestions to <users@texi2html.cvshome.org>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
-->
|
|
|
4c79b5 |
<head>
|
|
|
749e81 |
<title>CentOS Artwork Repository: 3.41 trunk/Scripts/Bash/Functions/Path</title>
|
|
|
4c79b5 |
|
|
|
749e81 |
<meta name="description" content="CentOS Artwork Repository: 3.41 trunk/Scripts/Bash/Functions/Path">
|
|
|
749e81 |
<meta name="keywords" content="CentOS Artwork Repository: 3.41 trunk/Scripts/Bash/Functions/Path">
|
|
|
4c79b5 |
<meta name="resource-type" content="document">
|
|
|
4c79b5 |
<meta name="distribution" content="global">
|
|
|
4c79b5 |
<meta name="Generator" content="texi2html 1.76">
|
|
|
4c79b5 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
|
4c79b5 |
<style type="text/css">
|
|
|
4c79b5 |
|
|
|
1e9202 |
@import "/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/common.css";
|
|
|
4c79b5 |
|
|
|
4c79b5 |
a.summary-letter {text-decoration: none}
|
|
|
4c79b5 |
pre.display {font-family: serif}
|
|
|
4c79b5 |
pre.format {font-family: serif}
|
|
|
4c79b5 |
pre.menu-comment {font-family: serif}
|
|
|
4c79b5 |
pre.menu-preformatted {font-family: serif}
|
|
|
4c79b5 |
pre.smalldisplay {font-family: serif; font-size: smaller}
|
|
|
4c79b5 |
pre.smallexample {font-size: smaller}
|
|
|
4c79b5 |
pre.smallformat {font-family: serif; font-size: smaller}
|
|
|
4c79b5 |
pre.smalllisp {font-size: smaller}
|
|
|
4c79b5 |
span.sansserif {font-family:sans-serif; font-weight:normal;}
|
|
|
4c79b5 |
ul.toc {list-style: none}
|
|
|
4c79b5 |
-->
|
|
|
4c79b5 |
</style>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
</head>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
01b527 |
[ < ]
|
|
|
01b527 |
[ > ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ << ]
|
|
|
4c79b5 |
[ Up ]
|
|
|
01b527 |
[ >> ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[Top]
|
|
|
4c79b5 |
[Contents]
|
|
|
01b527 |
[Index]
|
|
|
4c79b5 |
[ ? ]
|
|
|
4c79b5 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
749e81 |
3.41 trunk/Scripts/Bash/Functions/Path
|
|
|
b0644c |
|
|
|
b0644c |
|
|
|
01b527 |
|
|
|
e37211 |
3.41.1 Goals
|
|
|
e37211 |
|
|
|
749e81 |
This section exists to organize files related to path
|
|
|
749e81 |
functiontionality of <tt>`centos-art.sh'</tt> script. The path
|
|
|
749e81 |
functionality of <tt>`centos-art.sh'</tt> script standardizes movement,
|
|
|
749e81 |
syncronization, branching, tagging, and general file maintainance
|
|
|
749e81 |
inside the repository.
|
|
|
749e81 |
|
|
|
63f275 |
|
|
|
01b527 |
|
|
|
e37211 |
3.41.2 Description
|
|
|
e37211 |
|
|
|
749e81 |
"CentOS like trees, has roots, trunk, branches, leaves and
|
|
|
749e81 |
flowers. Day by day they work together in freedom, ruled by the laws
|
|
|
749e81 |
of nature and open standards, to show the beauty of its
|
|
|
749e81 |
existence."
|
|
|
749e81 |
|
|
|
c6292c |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.2.1 Repository layout
|
|
|
c6292c |
|
|
|
749e81 |
The repository layout describes organization of files and directories
|
|
|
749e81 |
inside the repository. The repository layout provides the standard
|
|
|
749e81 |
backend required for automation scripts to work correctly. If such
|
|
|
749e81 |
layout changes unexpectedly, automation scripts may confuse themselves
|
|
|
749e81 |
and stop doing what we expect from them to do.
|
|
|
749e81 |
|
|
|
749e81 |
As convenction, inside CentOS Artwork Repository, we organize files
|
|
|
749e81 |
and directories, related to CentOS corporate visual identity, under
|
|
|
749e81 |
three top level directories named <tt>`trunk/'</tt>, <tt>`branches/'</tt>, and
|
|
|
749e81 |
<tt>`tags/'</tt>.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
c6292c |
|
|
|
583d5d |
Figure 3.11: The CentOS Artwork Repository layout.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
The <tt>`trunk/'</tt> directory (see section trunk) organizes the main
|
|
|
749e81 |
development line of CentOS corporate visual identity. Inside
|
|
|
749e81 |
<tt>`trunk/'</tt> directory structure, the CentOS corporate visual
|
|
|
749e81 |
identity concepts are implemented using directories. There is one
|
|
|
749e81 |
directory level for each relevant concept inside the repository. The
|
|
|
749e81 |
<tt>`trunk/'</tt> directory structure is mainly used to develop CentOS
|
|
|
749e81 |
corporate visual identity.
|
|
|
749e81 |
|
|
|
749e81 |
The <tt>`branches/'</tt> directory (see section branches) oranizes parallel
|
|
|
749e81 |
development lines to <tt>`trunk/'</tt> directory. The <tt>`branches/'</tt>
|
|
|
749e81 |
directory is used to set points in time where develpment lines are
|
|
|
749e81 |
devided one from another taking separte and idependent lives that
|
|
|
749e81 |
share a common past from the point they were devided on. The
|
|
|
749e81 |
<tt>`branches/'</tt> directory is mainly used to perform quality assurance
|
|
|
749e81 |
on CentOS corporate visual identity.
|
|
|
749e81 |
|
|
|
749e81 |
The <tt>`tags/'</tt> directory (see section tags) organizes parallel frozen
|
|
|
749e81 |
lines to <tt>`branches/'</tt> directory. The parallel frozen lines are
|
|
|
749e81 |
immutable, nothing change inside them once they has been created. The
|
|
|
749e81 |
<tt>`tags/'</tt> directory is mainly used to publish final releases of
|
|
|
749e81 |
CentOS corporate visual identity.
|
|
|
749e81 |
|
|
|
749e81 |
The CentOS Artwork Repository layout is firmly grounded on a
|
|
|
749e81 |
Subversion base. Subversion (http://subversion.tigris.org) is a
|
|
|
749e81 |
version control system, which allows you to keep old versions of files
|
|
|
749e81 |
and directories (usually source code), keep a log of who, when, and
|
|
|
749e81 |
why changes occurred, etc., like CVS, RCS or SCCS. Subversion keeps a
|
|
|
749e81 |
single copy of the master sources. This copy is called the source
|
|
|
749e81 |
"repository"; it contains all the information to permit extracting
|
|
|
749e81 |
previous versions of those files at any time.
|
|
|
749e81 |
|
|
|
c6292c |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.2.2 Repository name convenctions
|
|
|
749e81 |
|
|
|
749e81 |
Repository name convenctions help us to maintain consistency of names
|
|
|
749e81 |
inside the repository.
|
|
|
749e81 |
|
|
|
749e81 |
Repository name convenctions are applied to files and directories
|
|
|
749e81 |
inside the repository layout. As convenction, inside the repository
|
|
|
749e81 |
layout, file names are all written in lowercase
|
|
|
749e81 |
(<samp>`01-welcome.png'</samp>, <samp>`splash.png'</samp>, <samp>`anaconda_header.png'</samp>,
|
|
|
749e81 |
etc.) and directory names are all written capitalized (e.g.,
|
|
|
749e81 |
<samp>`Identity'</samp>, <samp>`Themes'</samp>, <samp>`Motifs'</samp>, <samp>`TreeFlower'</samp>,
|
|
|
749e81 |
etc.).
|
|
|
749e81 |
|
|
|
749e81 |
Repository name convenctions are implemented inside the
|
|
|
749e81 |
cli_getRepoName function of <tt>`centos-art.sh'</tt> script. With
|
|
|
749e81 |
cli_getRepoName function we reduce the amount of commands and
|
|
|
67cef4 |
convenctions to remember, concentrating them in just one single place
|
|
|
67cef4 |
to look for fixes and improvements.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.2.3 Repository work flow
|
|
|
749e81 |
|
|
|
749e81 |
Repository work flow describes the steps and time intervals used to
|
|
|
749e81 |
produce CentOS corporate visual identity inside CentOS Artwork
|
|
|
749e81 |
Repository.
|
|
|
749e81 |
|
|
|
749e81 |
To illustrate repository work flow let's consider themes' development
|
|
|
749e81 |
cycle.
|
|
|
749e81 |
|
|
|
749e81 |
Initially, we start working themes on their trunk development line
|
|
|
749e81 |
(e.g., <tt>`trunk/Identity/Themes/Motifs/TreeFlower/'</tt>), here we
|
|
|
e16eda |
organize information that cannot be produced automatically (i.e.,
|
|
|
e16eda |
background images, concepts, color information, screenshots, etc.).
|
|
|
749e81 |
|
|
|
e16eda |
Later, when theme trunk development line is considered "ready" for
|
|
|
e16eda |
implementation (e.g., all required backgrounds have been designed),
|
|
|
e16eda |
we create a branch for it (e.g.,
|
|
|
e16eda |
<tt>`branches/Identity/Themes/Motifs/TreeFlower/1/'</tt>). Once the
|
|
|
e16eda |
branch has been created, we forget that branch and continue working
|
|
|
e16eda |
the trunk development line while others (e.g., an artwork quality
|
|
|
e16eda |
assurance team) test the new branch for tunning it up.
|
|
|
749e81 |
|
|
|
749e81 |
Once the branch has been tunned up, and considered "ready" for
|
|
|
749e81 |
release, it is freezed under <tt>`tags/'</tt> directory (e.g.,
|
|
|
749e81 |
<tt>`tags/Identity/Themes/Motifs/TreeFower/1.0/'</tt>) for packagers,
|
|
|
749e81 |
webmasters, promoters, and anyone who needs images from that CentOS
|
|
|
749e81 |
theme the tag was created for.
|
|
|
749e81 |
|
|
|
749e81 |
Both branches and tags, inside CentOS Artwork Repository, use
|
|
|
749e81 |
numerical values to identify themselves under the same location.
|
|
|
749e81 |
Branches start at one (i.e., <samp>`1'</samp>) and increment one unit for each
|
|
|
749e81 |
branch created from the same trunk development line. Tags start at
|
|
|
749e81 |
zero (i.e., <samp>`0'</samp>) and increment one unit for each tag created from
|
|
|
749e81 |
the same branch development line.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
583d5d |
Figure 3.12: Name convention for tags and branches creation.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
e16eda |
Convenction Do not freeze trunk development lines using tags
|
|
|
e16eda |
directly. If you think you need to freeze a trunk development line,
|
|
|
e16eda |
create a branch for it and then freeze that branch instead.
|
|
|
e16eda |
|
|
|
e16eda |
|
|
|
749e81 |
The trunk development line may introduce problems we cannot see
|
|
|
749e81 |
immediatly. Certainly, the high changable nature of trunk development
|
|
|
749e81 |
line complicates finding and fixing such problems. On the other hand,
|
|
|
e16eda |
the branched development lines provide a more predictable area where
|
|
|
e16eda |
only fixes/corrections to current content are commited up to
|
|
|
e16eda |
repository.
|
|
|
749e81 |
|
|
|
749e81 |
If others find and fix bugs inside the branched development line, we
|
|
|
749e81 |
could merge such changes/experiences back to trunk development line
|
|
|
749e81 |
(not visversa) in order for future branches, created from trunk, to
|
|
|
749e81 |
benefit.
|
|
|
749e81 |
|
|
|
749e81 |
Time intervals used to create branches and tags may vary, just as
|
|
|
749e81 |
different needs may arrive. For example, consider the release schema
|
|
|
749e81 |
of CentOS distribution: one major release every 2 years, security
|
|
|
749e81 |
updates every 6 months, support for 7 years long. Each time a CentOS
|
|
|
749e81 |
distribution is released, specially if it is a major release, there is
|
|
|
749e81 |
a theme need in order to cover CentOS distribution artwork
|
|
|
749e81 |
requirements. At this point, is where CentOS Artwork Repository comes
|
|
|
749e81 |
up to scene.
|
|
|
749e81 |
|
|
|
e16eda |
Before releasing a new major release of CentOS distribution we create
|
|
|
e16eda |
a branch for one of several theme development lines available inside
|
|
|
e16eda |
the CentOS Artwork Repository, perform quality assurance on it, and
|
|
|
e16eda |
later, freeze that branch using tags. Once a the theme branch has been
|
|
|
e16eda |
frozen (under <tt>`tags/'</tt> directory), CentOS Packagers (the persons
|
|
|
e16eda |
whom build CentOS distribution) can use that frozen branch as source
|
|
|
e16eda |
location to fulfill CentOS distribution artwork needs. The same
|
|
|
e16eda |
applies to CentOS Webmasters (the persons whom build CentOS websites),
|
|
|
e16eda |
and any other visual manifestation required by the project.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.2.4 Parallel directories
|
|
|
749e81 |
|
|
|
749e81 |
Inside CentOS Artwork Repository, parallel directories are simple
|
|
|
749e81 |
directory entries built from a common parent directory and placed in a
|
|
|
749e81 |
location different to that, the common parent directory is placed on.
|
|
|
749e81 |
Parallel directories are useful to create branches, tags,
|
|
|
749e81 |
translations, documentation, pre-rendering configuration script, and
|
|
|
749e81 |
similar directory structures.
|
|
|
749e81 |
|
|
|
749e81 |
Parallel directories take their structure from one unique parent
|
|
|
749e81 |
directory. Inside CentOS Artwork Repository, this unique parent
|
|
|
749e81 |
directory is under <tt>`trunk/Identity'</tt> location. The
|
|
|
749e81 |
<tt>`trunk/Identity'</tt> location must be considered the reference for
|
|
|
749e81 |
whatever information you plan to create inside the repository.
|
|
|
749e81 |
|
|
|
749e81 |
In some circumstances, parallel directories may be created removing
|
|
|
749e81 |
uncommon information from their paths. Uncommon path information
|
|
|
749e81 |
refers to those directory levels in the path which are not common for
|
|
|
749e81 |
other parallel directories. For example, when rendering
|
|
|
749e81 |
<tt>`trunk/Identity/Themes/Motifs/TreeFlower/Distro'</tt> directory
|
|
|
749e81 |
structure, the <tt>`centos-art.sh'</tt> script removes the
|
|
|
749e81 |
<tt>`Motifs/TreeFlower/'</tt> directory levels from path, in order to
|
|
|
749e81 |
build the parallel directory used to retrived translations, and
|
|
|
749e81 |
pre-rendering configuration scripts required by render
|
|
|
749e81 |
functionality.
|
|
|
749e81 |
|
|
|
749e81 |
Another example where parallel directory removes the uncommon path
|
|
|
49151b |
information is when we use the manual functionality. This time,
|
|
|
749e81 |
<tt>`centos-art.sh'</tt> script uses parallel directory information
|
|
|
749e81 |
(without uncommon directory levels) to build the documentation entry
|
|
|
e16eda |
required by Texinfo documentation system, inside the repository.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
583d5d |
Figure 3.13: Parallel directories removing uncommon information.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
Othertimes, parallel directories may add uncommon information to their
|
|
|
749e81 |
paths. This is the case we use to create branches and tags. When we
|
|
|
749e81 |
create branches and tags, a numerical identifier is added to parallel
|
|
|
749e81 |
directory structure path. The place where the numerical identifier is
|
|
|
749e81 |
set on is relevant to corporate visual identity structure and should
|
|
|
749e81 |
be carefully considered where it will be.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
583d5d |
Figure 3.14: Parallel directories adding uncommon information.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
When one parent directory changes, all their related parallel
|
|
|
749e81 |
directories need to be changed too. This is required in order for
|
|
|
e16eda |
parallel directories to retain their relation with the parent
|
|
|
e16eda |
directory structure. In the other hand, parallel directories should
|
|
|
e16eda |
never be modified under no reason but to satisfy the relation to their
|
|
|
e16eda |
parent directory structure. Liberal change of parallel directories
|
|
|
e16eda |
may suppresses the conceptual idea they were initially created for;
|
|
|
e16eda |
and certainly, things may stop working the way they should do.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
583d5d |
Figure 3.15: Wrong construction of parallel directories.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.2.5 Syncronizing path information
|
|
|
749e81 |
|
|
|
749e81 |
Creating parallel directories is very useful to keep repository
|
|
|
e16eda |
organized but introduce some complications. For instance, consider
|
|
|
e16eda |
what would happen to functionalities like manual (<samp>`trunk
|
|
|
e16eda |
Scripts Bash Functions Manual'</samp>) that rely on parent directory
|
|
|
e16eda |
structures to create documentation entries (using parallel directory
|
|
|
e16eda |
structures) if one of those parent directory structures suddenly
|
|
|
e16eda |
changes after the documentation entry has been already created for it?
|
|
|
e16eda |
|
|
|
e16eda |
If that is the case, functionalities like manual may confuse
|
|
|
e16eda |
themselves if path information is not updated to reflect the relation
|
|
|
e16eda |
with its parent directory. Such functionalities work with parent
|
|
|
e16eda |
directory structure as reference; if a parent directory changes, the
|
|
|
e16eda |
functionalities dont't even note it because they work with the last
|
|
|
e16eda |
parent directory structure available in the repository, no matter what
|
|
|
e16eda |
it is.
|
|
|
749e81 |
|
|
|
49151b |
In the specific case of documentation (the manual
|
|
|
49151b |
functionality), the problem mentioned above provokes that older parent
|
|
|
49151b |
directories, already documented, remain inside documentation directory
|
|
|
49151b |
structures as long as you get your hands into the documentation
|
|
|
e16eda |
directory structure (<tt>`trunk/Manuals'</tt>) and change what must be
|
|
|
e16eda |
changed to match the new parent directory structure.
|
|
|
749e81 |
|
|
|
49151b |
There is no way for manual , and similar functionalities that
|
|
|
49151b |
use parent directories as reference, to know when and how directory
|
|
|
749e81 |
movements take place inside the repository. Such information is
|
|
|
749e81 |
available only when movement actions, like thoses achived by
|
|
|
749e81 |
rm or mv commands, take place inside the
|
|
|
749e81 |
repository. So, is there, at the moment of moving files, when we need
|
|
|
749e81 |
to syncronize parallel directories with their unique parent directory
|
|
|
749e81 |
structure.
|
|
|
749e81 |
|
|
|
749e81 |
Syncronizing parallel directories with their respecitive parent
|
|
|
749e81 |
directory implies moving files inside the repository, i.e. we need to,
|
|
|
749e81 |
firstly, rebuild the path information for each parallel directory
|
|
|
749e81 |
inside the repository, using the current path of its parent directory
|
|
|
749e81 |
as reference, and later, use the new path information to move each old
|
|
|
749e81 |
parallel directory from its old location to its new location based on
|
|
|
749e81 |
an updated path information.
|
|
|
749e81 |
|
|
|
749e81 |
As CentOS Artwork Repository is built over a version control system,
|
|
|
749e81 |
file movements inside the repository are considered repository
|
|
|
749e81 |
changes. In order for these repository changes to be versioned, we
|
|
|
749e81 |
need to, firstly, add changes related files into version control
|
|
|
749e81 |
system, and later, use commands from the version control system to
|
|
|
749e81 |
move those files already versioned. This configuration makes possible
|
|
|
749e81 |
for everyone to know about changes details inside the repository; and
|
|
|
749e81 |
if needed, revert or update them back to a previous revision.
|
|
|
749e81 |
|
|
|
749e81 |
Finally, once all file corrections have been already made, the
|
|
|
749e81 |
syncronization action takes care of updating path references inside
|
|
|
749e81 |
related files. Updating path references inside related files is
|
|
|
749e81 |
specially important for documentation files where documentation nodes
|
|
|
749e81 |
are built using repository path information as reference.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
e16eda |
3.41.2.6 What is the right place to store it?
|
|
|
749e81 |
|
|
|
749e81 |
Occasionly, you may find that new corporate visual identity components
|
|
|
749e81 |
need to be added to the repository. If that is your case, the first
|
|
|
749e81 |
question you need to ask yourself, before start to create directories
|
|
|
e16eda |
blindly all over, is: What is the right place to store it?
|
|
|
e16eda |
|
|
|
e16eda |
The CentOS Community different free support vains (see:
|
|
|
e16eda |
http://wiki.centos.org/GettingHelp) are the best place to find
|
|
|
e16eda |
answers to your question, but going there with hands empty is not good
|
|
|
e16eda |
idea. It may give the impression you don't really care about. Instead,
|
|
|
e16eda |
consider the following suggestions to find your own comprehension and
|
|
|
e16eda |
so, make your propositions based on it.
|
|
|
e16eda |
|
|
|
e16eda |
When we are looking for the correct place to store new files, to bear
|
|
|
e16eda |
in mind the corporate visual identity structure used inside the CentOS
|
|
|
e16eda |
Artwork Repository (see section trunk/Identity) would be probaly the best
|
|
|
e16eda |
advice we could offer, the rest is just matter of choosing appropriate
|
|
|
749e81 |
names. To illustrate this desition process let's consider the
|
|
|
e16eda |
<tt>`trunk/Identity/Themes/Motifs/TreeFlower'</tt> directory as
|
|
|
e16eda |
example. It is the trunk development line of TreeFlower's artistic
|
|
|
e16eda |
motif. Artistic motifs are considered part of themes, which in turn
|
|
|
e16eda |
are considered part of CentOS corporate visual identity.
|
|
|
749e81 |
|
|
|
749e81 |
When building parent directory structures, you may find that reaching
|
|
|
e16eda |
an acceptable location may take some time, and as it uses to happen
|
|
|
e16eda |
most of time; once you've find it, that may be not a definite
|
|
|
e16eda |
solution. There are many concepts that you need to play with, in
|
|
|
e16eda |
order to find a result that match the conceptual idea you try to
|
|
|
e16eda |
implement in the new directory location. To know which these concepts
|
|
|
e16eda |
are, split the location in words and read its documentation entry from
|
|
|
e16eda |
less specific to more specific.
|
|
|
e16eda |
|
|
|
e16eda |
For example, the <tt>`trunk/Identity/Themes/Motifs/TreeFlower'</tt>
|
|
|
e16eda |
location evolved through several months of contant work and there is
|
|
|
e16eda |
no certain it won't change in the future, even it fixes quite well the
|
|
|
e16eda |
concept we are trying to implement. The concepts used in
|
|
|
e16eda |
<tt>`trunk/Identity/Themes/Distro/Motifs/TreeFlower'</tt> location are
|
|
|
e16eda |
described in the following commands, respectively:
|
|
|
749e81 |
|
|
|
49151b |
centos-art manual --read=turnk/
|
|
|
49151b |
centos-art manual --read=turnk/Identity/
|
|
|
49151b |
centos-art manual --read=turnk/Identity/Themes/
|
|
|
49151b |
centos-art manual --read=turnk/Identity/Themes/Motifs/
|
|
|
49151b |
centos-art manual --read=turnk/Identity/Themes/Motifs/TreeFlower/
|
|
|
749e81 |
|
|
|
749e81 |
Other location concepts can be found similary as we did above, just
|
|
|
749e81 |
change the location we used above by the one you are trying to know
|
|
|
749e81 |
concepts for.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
749e81 |
3.41.3 Usage
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --copy=SRC --to=DST
|
|
|
749e81 |
Use this command to duplicate <tt>`SRC'</tt> in working copy,
|
|
|
749e81 |
remembering history. In this command, <tt>`SRC'</tt> and
|
|
|
749e81 |
<tt>`DST'</tt> can each be either a working copy (WC) path or
|
|
|
749e81 |
URL:
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`WC -> WC'</samp>
|
|
|
749e81 |
Copy and schedule for addition (with history).
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`WC -> URL'</samp>
|
|
|
749e81 |
Immediately commit a copy of WC to URL.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`URL -> WC'</samp>
|
|
|
749e81 |
Check out URL into WC, schedule for addition.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`URL -> URL'</samp>
|
|
|
749e81 |
Complete server-side copy; used to branch and tag.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
This command is an interface for Subversion's copy command.
|
|
|
749e81 |
Options related to Subversion's copy command can be passed
|
|
|
749e81 |
from third argument on. For example to specify a log message use the
|
|
|
749e81 |
<samp>`--message'</samp> option as follow:
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --copy=URL/SRC --to=URL/DST --message 'Copy url/src to url/dst'
|
|
|
749e81 |
|
|
|
749e81 |
For more information on Subversion's copy functionality,
|
|
|
749e81 |
run the command: svn help copy | less .
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --move=SRC --to=DST
|
|
|
749e81 |
Move and/or rename something in working copy or repository. In this
|
|
|
749e81 |
command, SRC and DST can both be working copy (WC) paths or URLs:
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`WC -> WC'</samp>
|
|
|
749e81 |
Move and schedule for addition (with history).
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`URL -> URL'</samp>
|
|
|
749e81 |
Complete server-side rename.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
This command is an interface for Subversion's move command.
|
|
|
749e81 |
Options related to Subversion's move command can be passed
|
|
|
749e81 |
from third argument on. For example to specify a log message use the
|
|
|
749e81 |
<samp>`--message'</samp> option as follow:
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --move=URL/SRC --to=URL/DST --message 'Move url/src to url/dst'
|
|
|
749e81 |
|
|
|
749e81 |
For more information on Subversion's move functionality,
|
|
|
749e81 |
run the command: svn help move | less .
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --delete='SRC'
|
|
|
749e81 |
Use this command to remove files and directories from version control.
|
|
|
749e81 |
In this command, <tt>`SRC'</tt> can be a working copy (WC) path or URL.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`WC'</samp>
|
|
|
749e81 |
Each item specified by a PATH is scheduled for deletion upon the next
|
|
|
749e81 |
commit. Files, and directories that have not been committed, are
|
|
|
749e81 |
immediately removed from the working copy. PATHs that are, or
|
|
|
749e81 |
contain, unversioned or modified items will not be removed unless the
|
|
|
749e81 |
<samp>`--force'</samp> option is given.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
<samp>`URL'</samp>
|
|
|
749e81 |
Each item specified by a URL is deleted from the repository via an
|
|
|
749e81 |
immediate commit.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
This command is an interface for Subversion's delete
|
|
|
749e81 |
command. Options related to Subversion's delete can be
|
|
|
749e81 |
passed from third argument on. For example to specify a log message
|
|
|
749e81 |
use the <samp>`--message'</samp> as follow:
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --delete='URL' --message 'Delete url.'
|
|
|
749e81 |
|
|
|
749e81 |
For more information on Subversion's delete functionality,
|
|
|
749e81 |
run the command: svn help delete | less .
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
centos-art path --sync='SRC'
|
|
|
749e81 |
Use this command to syncronize path information inside working copy.
|
|
|
749e81 |
This command is automatically used after moving or renaming parent
|
|
|
749e81 |
directories. In this command, <tt>`SRC'</tt> is a working copy path
|
|
|
749e81 |
inside <tt>`trunk/Identity/'</tt> location, considered the parent
|
|
|
749e81 |
directory you want to syncronize path information for.
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
01b527 |
|
|
|
54264c |
3.41.4 See also
|
|
|
4c79b5 |
|
|
|
749e81 |
|
|
|
01b527 |
3.36 trunk/Scripts/Bash
|
|
|
749e81 |
|
|
|
01b527 |
3.37 trunk/Scripts/Bash/Functions
|
|
|
749e81 |
|
|
|
749e81 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
01b527 |
[ < ]
|
|
|
01b527 |
[ > ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ << ]
|
|
|
01b527 |
[ Up ]
|
|
|
01b527 |
[ >> ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<font size="-1">
|
|
|
49151b |
This document was generated on December, 20 2010 using texi2html 1.76.
|
|
|
4c79b5 |
</font>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
</body>
|
|
|
4c79b5 |
</html>
|