74 lines
2.5 KiB
ReStructuredText
74 lines
2.5 KiB
ReStructuredText
|
User manual
|
||
|
###########
|
||
|
|
||
|
Using BAM is easy and fun! Provided that:
|
||
|
|
||
|
- you know how to use the command line of your os
|
||
|
- have some experience of how versioning systems work
|
||
|
|
||
|
Actually, this is not true, and in this guide we will explain to use BAM client from scracth.
|
||
|
|
||
|
.. hint:: Do not try to follow this page as a step-by-step tutorial, since its content might
|
||
|
be not completely coherent. The purpose of this manual is simply to explain the bam
|
||
|
workflow from the artist point of view.
|
||
|
|
||
|
|
||
|
Project Initialization
|
||
|
======================
|
||
|
|
||
|
In order to start working, we need to initialize a *project folder*. This operation should
|
||
|
be done only once. To create a project folder we need to open our terminal, and go to the
|
||
|
location where we want to store the project folder. Then we can type::
|
||
|
|
||
|
bam init http://bam:5000/gooseberry
|
||
|
|
||
|
This command creates a ``gooseberry`` folder, containing information about the project. If
|
||
|
we enter the folder and use the ``ls`` comand command, we notice that it is empty, but if
|
||
|
we use the ``bam ls`` command we see a directory listing. This listing is provided by the
|
||
|
project server on the fly and it allows us to browse its content without having a local copy
|
||
|
on our machine.
|
||
|
|
||
|
The project folder can be moved anywhere, at any time. The exact ``bam init`` syntax is
|
||
|
available in the reference section.
|
||
|
|
||
|
|
||
|
Session creation
|
||
|
================
|
||
|
|
||
|
Once the project has been initialized and we are able to browse it remotely, we can proceed
|
||
|
checking out a file from it. For example we can type::
|
||
|
|
||
|
bam co libs/envs/jungle/jungle_opening.blend
|
||
|
|
||
|
This creates a ``jungle_opening`` folder inside of our ``gooseberry`` project folder, which
|
||
|
will contain the ``jungle_opening.blend``, along with all its dependencies (library files,
|
||
|
textures, etc.) organized as follows. ::
|
||
|
|
||
|
jungle_opening.blend
|
||
|
relative/maps/path/map.png
|
||
|
_absolute/maps/path/map.png
|
||
|
|
||
|
As we can see, folders starting with the ``_`` character map to an absolute path on the server,
|
||
|
while the other folders are relative to the file that was used to create the session.
|
||
|
|
||
|
|
||
|
Editing
|
||
|
=======
|
||
|
|
||
|
At this point we can edit any file in the session, and the system will keep track of our changes.
|
||
|
Currently we can:
|
||
|
|
||
|
- add new files to the session
|
||
|
- delete files
|
||
|
- edit files
|
||
|
|
||
|
We can not:
|
||
|
|
||
|
- rename files
|
||
|
|
||
|
In order to check what is the status of our edits, we can use ``bam st``, which will print a list
|
||
|
of edited, added and deleted files.
|
||
|
|
||
|
.. note:: Sessions are meant to create a contained and controlled working environment. We should
|
||
|
never, ever refer to content that is outside of a session folder.
|