Copybara is an open source code transformation and migration tool developed by Google for synchronizing and managing source code across multiple repositories. It allows developers to transform, filter, and move code between repositories while maintaining a consistent source of truth. Copybara is particularly useful in workflows where projects maintain both confidential (internal) and public (open source) repositories, enabling controlled synchronization and contribution management between them. The tool supports advanced transformations—such as file relocation, content replacement, and metadata adjustments—defined declaratively in configuration files. It operates in a stateless manner, storing synchronization state within commit metadata to ensure reproducibility and collaboration among multiple users. Copybara currently supports Git repositories (with experimental Mercurial support) and can be integrated with CI/CD systems or run manually.
Features
- Automates code movement and transformation between multiple repositories
- Supports synchronization between internal and public codebases
- Stateless design with synchronization metadata stored in commit messages
- Built-in support for Git repositories with experimental Mercurial compatibility
- Highly configurable workflows for custom transformations and authoring rules
- Can be built and run using Bazel or Docker for flexible deployment