This repository has been archived on 2023-02-28. You can view files and clone it, but cannot push or open issues or pull requests.
Files
blender-asset-manager/docs/source/manual/index.rst

98 lines
3.2 KiB
ReStructuredText
Raw Normal View History

2014-12-03 18:55:13 +01:00
User manual
###########
Using BAM is easy and fun! Provided that:
2014-12-04 11:06:41 +01:00
- you know how to use the command line of your os
2014-12-03 18:55:13 +01:00
- have some experience of how versioning systems work
2014-12-04 11:06:41 +01:00
Actually, this is not true, and in this guide we will explain to use BAM client from scracth.
2014-12-03 18:55:13 +01:00
2014-12-04 11:06:41 +01:00
.. 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.
2014-12-03 18:55:13 +01:00
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
2014-12-04 11:06:41 +01:00
location where we want to store the project folder. Then we can type::
2014-12-03 18:55:13 +01:00
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
2014-12-04 11:06:41 +01:00
checking out a file from it. For example we can type::
2014-12-03 18:55:13 +01:00
2014-12-04 11:06:41 +01:00
bam co libs/envs/jungle/jungle_opening.blend
2014-12-03 18:55:13 +01:00
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
2014-12-04 11:06:41 +01:00
In order to check what is the status of our edits, we can use ``bam st``, which will print a list
2014-12-03 18:55:13 +01:00
of edited, added and deleted files.
2014-12-04 11:06:41 +01:00
.. 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.
Committing changes
==================
Once we are happy with the changes we made to the session, we can sent id back to the server, which
will take care of versioning and merging it back into the project.
To commit a change, simply type::
bam ci -m 'Updated trees'
If you are outside the session folder, you have to specify it::
bam ci jungle_opening -m 'Updated trees'
After committing, we can keep working in the same session, and do further commits.
Updatding and existing session
==============================
At the moment it is not possible to update the session (if another artist updates one of the assets
for example, we would like such asset to be updated in all the sessions using it).
2014-12-03 23:06:55 +01:00