conan remote add exclusive https://myrepo.artifactory.com/artifactory/api/conan/conan-local
Conan ships with a basic server command: conan_server. It runs a simple Python server. While functional, it lacks authentication and replication features.
If you have a 10-year-old Makefile project with vendor/ directories checked into Git, migrating to Conan is daunting. Start by creating a hybrid exclusive repository. conan repository exclusive
The exclusive repository becomes the migration source of truth. You can even wrap legacy .so files into Conan packages without source code.
Consider a large fintech company with three teams: conan remote add exclusive https://myrepo
Without exclusivity, Team App's conan install might pull an outdated crypto-lib from a developer's local cache or a public mirror. With exclusivity configured:
conan.conf for Team App:
[remotes_exclusive]
corp-core-repo = crypto-lib/*
corp-net-repo = http-parser/*
conan-center = * # All other packages (zlib, openssl, etc.)
Now, every build is deterministic. The crypto-lib always comes from the core team's repository, and the networking library always comes from the network team's repository. No one can accidentally poison the build.
By default, Conan comes with conancenter active. To make your repository exclusive, you must remove the others. The exclusive repository becomes the migration source of
# Check current remotes
conan remote list
# Remove Conan Center (or any other existing remotes)
conan remote remove conancenter
Even experienced teams stumble when implementing repository exclusivity. Here are the most frequent issues and their solutions.
You have three primary options for hosting an exclusive Conan repository. Choosing the right one depends on your team size and budget.