Advanced workspace synchronization tool for Unreal Engine projects hosted on git repositories.
Before running any scripts, use pipenv install
and then pipenv shell
.
Run dependencies.bat
on Windows or dependencies.sh
on Linux.
On Linux, this step can be skipped.
PyInstaller is required for executable generation, and it should be built from source to prevent false positive virus detections of generated PBSync executable.
You can run install_pyinstaller.bat
to do this automatically.
To generate a binary file from python source code, just run build.bat
script. If generation was successful, the binary file will be put inside dist
folder. To start using, generated executable should be put into root folder of the Unreal Engine project.
On Linux systems, run the build.sh
script to generate binary file.
But, since most Linux systems come with a version of Python already available, another option is to run it directly:
git clone https://github.com/ProjectBorealis/PBSync
PYTHONPATH=<path-to-local-PBSync> python <path-to-local-PBSync>/pbsync/pbsync.py --help
Everyone is welcomed to fork the repository, or open pull requests and new issues in this main repository.
You can refer to our PBCore repo for an example of usage.
Essentially, we use a batch script to sync PBSync with the remote branch, and then launch PBSync (UpdateProject.bat
). We have our configuration file in PBSync.xml
.
PBSync.exe
and ueversionator.exe
are distributed as part of the repo, at the root game project level.
.ueversionator
in the repo configures the engine download.
Additional scripts for managing various PBSync functionality can be found in the Script
folder.
List of available commands can be printed to console by passing --help
to generated executable.