Are you an LLM? You can read better optimized documentation at /docs/devops/managed-repos.md for this page in Markdown format
Managed repositories
While OrgFlow allows you to bring your own Git repository, we can also create and manage one on your behalf. We call this a managed repository.
Behind the scenes, managed repositories are just normal GitHub repositories that OrgFlow creates and manages for you. They provide a simpler experience than bringing your own Git repository, because:
- You don't need a Git provider account
- You don't need to create, configure and manage a Git repository
- OrgFlow manages authentication on your behalf
Viewing, cloning, and working with managed repositories
Managed repositories are private and belong to a private GitHub organization owned by OrgFlow. Managed repositories created for you are available only to OrgFlow and, optionally, to specific GitHub user accounts that you designate. They cannot be seen or discovered by other OrgFlow users or other GitHub users.
By default, managed repositories are only visible to OrgFlow. You may not find this very useful if you wish to work with the repository directly, for example to view the committed Salesforce metadata, open and review pull requests, or modify metadata directly in the repository.
To support these use cases, OrgFlow allows you to manage access to the repository by adding and removing user's access based on their GitHub usernames. GitHub users that have access to a managed repository do not necessarily need to have OrgFlow user accounts, and OrgFlow users that have access to a stack that uses a managed repository do not neccesarily need to have access to the managed repository.
OrgFlow supports two levels of user access:
- Read-only: allows users to view the repository in GitHub and clone the repository to a local device
- Read and write: allows users to do everything that read-only users can do, plus push commits, branches, and tags to the remote repository
Managing user access
User access can be managed from the stack settings page. If the stack is connected to a managed repository, you'll see a Manage access button under the repository URL in the Git connection section.
Clicking this button opens a dialog that allows you to view, invite, and remove users. When you invite a user, they will receive an email from GitHub asking them to accept the invitation. Once they accept the invitation they will have access to the repository. Make sure to use a GitHub username (and not an OrgFlow username) when inviting users!
About GitHub user accounts
GitHub user accounts are free to create and are not tied to OrgFlow user accounts in any way. Users who do not yet have a GitHub account can sign up at github.com.
If you need to change the access level of a user that already has access to the managed repository, you will need to first remove that user's access and then re-invite them.
Transferring ownership
Even if you started out with a managed repository for convenience, at some point in the future you might want to transition to using your own repository, for more control and to enable more advanced customization, integration and automation scenarios.
To make this transition seamless, we support transferring ownership of your managed repository to your own GitHub organization at any time. To request ownership transfer of your managed repository, please reach out to our support and we will be happy to assist.
After your repository has been transferred, the repository becomes subject to your own access control configuration in GitHub, and you must take any necessary steps to ensure continued access for your team. You must also create a personal accesss token and use it to configure your OrgFlow stack settings so that OrgFlow can continue to connect to the repository after the transfer. See the topic about authenticating to Git for more information.