Skip to main content

OEM Setup Guide

OneDev 16.9.4 or higher can be repackaged with your product name, website, contact email, and logos for redistribution to customers. This guide uses GitOn, https://giton.com, https://docs.giton.com, and [email protected] as examples.

There are two parts: repackage the distribution, and prepare the sites linked from the product. A separate documentation site is optional.

Repackage OneDev​

Download and unpack​

Download a OneDev distribution ZIP for version 16.9.4 or higher, such as onedev-latest.zip, and unpack it into a working directory. You can rename the extracted top-level directory to giton.

Inside that directory, create an oem folder alongside bin, conf, and site if it does not already exist. Prepare the package from a fresh distribution; use a separate copy when running GitOn to verify the branding or capture screenshots.

Populate OEM information​

Create or edit giton/oem/oem.properties with the following content:

product_name=GitOn
website=https://giton.com
docsite=https://docs.giton.com
PropertyPurpose
product_nameProduct name displayed in the application.
websiteBase URL of your product website, used for the product link and the pages described below.
docsiteBase URL of the documentation site, used for documentation links and contextual help.
contact_emailContact address shown in the product, including subscription and trial requests.

If you are not providing a separate documentation site, omit the docsite line to keep using https://docs.onedev.io. Do not leave the value empty. These properties are loaded when the server starts; restart a running instance after changing them.

Place your GitOn logos in the oem folder using these exact filenames:

FileUsed for
logo-light.pngLight mode.
logo-dark.pngDark mode.

Use 128 × 128 transparent PNGs, with colors that remain legible against the corresponding background. If one image works in both modes, copy it to both filenames. Each missing logo falls back to the bundled OneDev logo.

The resulting directory layout should look like this:

giton/
├── bin/
├── conf/
├── license.txt
├── oem/
│ ├── oem.properties
│ ├── logo-light.png
│ └── logo-dark.png
├── site/
└── ...

These logos become the defaults for new installations. Customers can override them under Administration / Branding; restoring the default branding uses the packaged OEM logos again.

Update the license agreement​

Update giton/license.txt with the agreed-upon end user license agreement (EULA) for redistribution to customers.

Zip and distribute​

Zip the entire giton directory, including the populated oem folder and all the other distribution files. For example, from its parent directory:

zip -r giton-16.9.4.zip giton

Replace 16.9.4 in the filename with the version you downloaded. Preserve the distribution's directory structure and executable permissions when repackaging.

Extract the finished ZIP into a separate directory and follow the installation guide to start it. Check the GitOn name, both logo variants, and the website, documentation, support, pricing, license, and contact links. Distribute the original ZIP after verification, so customers receive a fresh installation without your test instance's data.

Set Up Relevant Sites​

Product website​

Prepare https://giton.com before distributing the package. The application appends fixed paths to the configured website, so provide these pages or redirects to the corresponding destinations:

URLPurpose
https://giton.comProduct home page, linked from the product name/version and login page.
https://giton.com/supportSupport and bug reporting, linked from Support & Bug Report.
https://giton.com/pricingPricing, enterprise trials, subscription orders, and renewals.
https://giton.com/license-agreementLicense agreement, linked from the product's help menu.

Also set up the [email protected] mailbox to handle the contact and subscription requests directed there.

With a custom website, the built-in update check and OneDev support-request form are hidden, and trial requests use contact_email. You therefore do not need to implement OneDev's /check-update/..., /support-request, or /subscription-key endpoints for this setup.

Documentation site (optional)​

To provide documentation under your own brand, base your site on the OneDev documentation repository:

  1. Fork or clone the repository and follow its README to install dependencies and preview the site locally.
  2. Replace OneDev with GitOn in the documentation's product references, site title, navigation, and image descriptions. Update the site logo, favicon, website links, and contact details. Keep technical identifiers such as executable names, package names, and configuration keys unchanged where they are still required by the product.
  3. Set the site URL to https://docs.giton.com in docusaurus.config.js. Update or remove the inherited Algolia search configuration so search results do not lead back to OneDev's documentation.
  4. Review all screenshots and replace those showing OneDev branding with their GitOn counterparts. You can set up a GitOn instance from the repackaged distribution and have an AI assistant reproduce the documented steps and capture corresponding screenshots. Review the captures against the instructions before publishing them.
  5. Preserve the existing documentation paths and heading anchors, or provide redirects. Contextual help links append paths such as /administration-guide/backup-restore and /concepts#job-workdir to docsite.
  6. Run npm run build and host the generated build directory at https://docs.giton.com. Keep docsite=https://docs.giton.com in the package's oem/oem.properties and verify contextual help links from a GitOn instance.

If you choose to use the existing OneDev documentation instead, no separate documentation site is needed; omit docsite as described above.