Man Page workspace.1
NAME
workspace - manipulate Sun WorkShop TeamWare workspaces
SYNOPSIS
workspace command args ...
DESCRIPTION
The workspace command manipulates Sun WorkShop TeamWare
workspaces. Sun WorkShop TeamWare was formerly known as
CodeManager. A workspace is a directory that contains a sub-
directory named Codemgr_wsdata used by teamware to store
information about that workspace.
USAGE
Many of the following subcommands take an optional list of
workspaces, [ ws ... ]. If any workspaces are named, then
they are operated upon. If no workspaces are named, then the
value of the shell environment variable CODEMGR_WS is used.
If CODEMGR_WS is not set and the current directory is con-
tained within a workspace, the containing workspace is used.
access [ -l | -q operation=user ] [ ws ... ]
List or query the file
ws/Codemgr_wsdata/access_control. If
the -l option is specified, the command
lists the contents of access_control.
If the -q option is specified, the com-
mand queries access_control to determine
if user has permission to do operation
in ws. The command exits with the fol-
lowing values:
0 = user does not have access
1 = user has access
2 = error
The command also displays a textual mes-
sage indicating whether or not user has
access. To add, delete, or change user
entries, use the teamware GUI Props ->
Workspace command, or edit the file
ws/Codemgr_wsdata/access_control
directly (see access_control(4)).
check [ -W ] [ -s ] ws ...
Audits workspaces and reports on incon-
sistencies. Checks files, access modes,
parent-child relationships, and condi-
tion of the the history file.
-W suppresses warning messages (shows
error messages only). -s suppresses all
messages.
The command exits with the following
values:
0 = workspace is okay
1 = error
children [ -r ] [ ws ... ]
List ws's children workspaces. With the
-r option, ws's descendant workspaces
are recursively listed, each new genera-
tion indented two spaces. If more than
one ws is specified, the name of each ws
precedes its list.
create ws ... Create the named workspaces. If ws is
the name of an existing SunOS directory,
the command simply creates a
Codemgr_wsdata directory directly under
that directory. If ws does not exist,
both it and its Codemgr_wsdata subdirec-
tory are created.
delete [ -d ] [ -f ] ws ...
Delete the named workspaces. When a
workspace is deleted:
o Its name is removed from its parent's
Codemgr_wsdata/children file
o Its name is removed from its
children's Codemgr_wsdata/parent file
o The contents of the workspace are
deleted
Since it is a destructive operation,
workspace delete prompts for confirma-
tion before actually deleting a
workspace. The -f option forces dele-
tion by bypassing confirmation.
Used with the -d option, the command
deletes only the Codemgr_wsdata sub-
directory.
descr [ -n | -d | -a] ws ...
Lists the descriptive name and detailed
description for the workspace.
-n lists descriptive name only. -d
lists detailed description only. -a
lists both descriptive name and detailed
description.
filemv [files... targetdir]
Move a file. Moves both the clear file
and its s.file.
Error Messages:
2701 Couldn't determine absolute pathname for %ws
2702 stat of %s failed
2703 Destination file %s already exists
2704 No source file %s
2706 Target directory %s not found
filerm [ws files ... ]
Remove a file. Moves both the clear file
and its s. file to
ws/deleted_files/<path>
where path is the same workspace-
relative path as that of the given file.
Error Messages:
2701 Couldn't determine absolute pathname for %s
2708 File %s does not exist
2709 Removal of Codemgr_data directory is not allowed
2710 Couldn't unlink %s
find [ -c ] [ -m ] [ -s ] [ wsname... ]
Finds files in the current workspace or
in the workspaces named by wsname.
If the -c option is specified, the com-
mand will list any files that have been
checked out under SCCS.
If the -m option is specified, the com-
mand will list the names of any history
files that contain unmerged deltas fol-
lowed by the SID of each unmerged delta.
Adding the -s option will suppress the
listing of SIDs, showing filename only.
help Displays the list of workspace subcom-
mands and options.
list [ -r ] [ ws | dir ... ]
List ws if it is a workspace. List any
workspaces found underneath dir. With
the -r option, dir's workspaces are
recursively listed. If no ws or dir is
given, then the value of the shell
environment variable CODEMGR_WSPATH is
used.
locks [ -r ] [ ws ... ]
With no option specified, the locks that
are active for ws are listed. If -r is
specified, the locks are listed and the
user is prompted for which lock to
remove.
move from_ws to_ws Move the workspace from_ws to workspace
to_ws. If the move is across file sys-
tems, teamware will copy all files to
to_ws before it removes from_ws. The
command updates the parent and child
workspaces to reflect the new location.
Note: Do not use the SunOS mv command to
rename or move workspaces. The
workspace move command updates files in
the workspace's parent and children, as
well as logging the event in the
Codemgr_wsdata/history file.
If you inadvertently use the mv command
to move/rename a workspace and discover
that it has become "disconnected" from
its parent and children, you can use the
workspace move command to reconnect it.
For example, if you used the mv command
to rename workspace A to file B:
1. Use the workspace move command to
rename B to C. The command updates the
workspace's new name (C) in the parent
and child workspaces.
2. Lastly, use the workspace move com-
mand to change C back to B. Everything
should be reconnected.
name Name the workspace that the current
directory resides in.
parent [ -f ][ -p newparent ] [ -r ] [ -u ] [ ws ... ]
List ws's parent workspace, reparent ws
or unparent ws. With no options speci-
fied, the ws's parent is listed. With
the -r option, ws's ancestor workspaces
are recursively listed, each new genera-
tion indented two spaces. The recursive
list begins with the parent workspace
and proceeds through the previous gen-
erations. If more than one ws is speci-
fied, the name of each ws precedes its
list. If the -p option is set, the
workspace will be reparented to
newparent; ws's name is removed from its
current parent's children list, and is
added to newparent's children list. If
the old parent no longer exists, use the
-f option to force the reparent. To
change the workspace so that it no
longer has a parent, use the -u option.
updatenames [ -z ] [ ws ... ]
Update ws's name table by searching the
workspace for SCCS files. With the -z
option, also update files' name his-
tories, if they are out of date. ws can
also be the name of an environment. A
workspace's name table contains an entry
for every SCCS file in that workspace.
Each entry consists of a workspace-
relative file name and four hexadecimal
numbers computed from the file's first
SCCS delta. The bringover and putback
commands rely on the name tables in the
parent and child workspaces to detect
and propagate renames. Even if one
workspace's name table has been outdated
by a rename in that workspace, bringover
and putback can detect the rename by
inspecting both workspaces' name tables.
The bringover and putback commands iden-
tify renamed files and update the name
table accordingly. The larger the
workspace, the more time required to run
this command.
In some cases when SCCS files have been
copied within a workspace, updatenames
interactively prompts the user for the
current names of some SCCS files.
ENVIRONMENT
CODEMGR_PATH_ONLY Sun WorkShop TeamWare commands
first search for other Sun WorkShop
TeamWare binaries relative to where
their own binary is located in the
file system, they then search in
the directories specified in the
PATH environment variable. Setting
this variable causes Sun WorkShop
TeamWare commands to search for
other Sun WorkShop TeamWare
binaries only in PATH.
CODEMGR_WS Contains the name of a user's
default workspace. The workspace
specified by CODEMGR_WS will
automatically be used if -w option
is not specified to a command.
CODEMGR_WSPATH Specifies a list of workspace
directories to be automatically
loaded into the workspace pane upon
tool startup.
The CODEMGR_WSPATH variable can be
to set to one or more directories
that contain workspace directories.
For example, to set this variable
to the directories /export/home/ws
and ~/projects/ws, use the follow-
ing command:
example% setenv CODEMGR_WSPATH
"/export/home/ws ~/projects/ws"
USAGE
SEE ALSO
Sun WorkShop TeamWare User's Guide
bringover(1), codemgr(1), def.dir.flp(1), dmake(1),
freezept(1), putback(1), rcs2ws(1), resolve(1), teamware(1),
twbuild(1), twfreeze(1), twmerge(1), twversion(1), ws_undo(1),
access_control(4), args(4), children(4), conflicts(4),
description(4), freezepointfile(4), history(4), locks(4),
nametable(4), notification(4), parent(4), putback.cmt(4)
WARNINGS
TeamWare SCCS Restrictions
o TeamWare does not support cyclic rename. It cannot keep
track of files and file history if you switch file names.
That is, do not issue these commands:
workspace filemv fileA tmp
workspace filemv fileB fileA
workspace filemv tmp fileB
o Avoid using the sccs subcommands cdc, comb, fix, and
rmdel in TeamWare workspaces. Using these commands can
alter SCCS history files in ways which will make them
impossible for TeamWare to track. These commands also
have undesirable side effects when used on files that
exist in multiple workspaces that eventually may be
merged. The problems with these commands are:
cdc Can cause unnecessary branching and confusing his-
tories.
comb Completely rebuilds the SCCS history file.
fix A front-end for rmdel.
rmdel
SCCS restricts the use of the rmdel command to remove
only the most recent (leaf) delta on a branch. If you
remove a delta that also exists in another workspace,
it is possible that another user will add a delta in
the other workspace. The delta that was removed in
your workspace will no longer be a leaf delta when the
files are merged.