1. Features
    1. Cloud Source Repositories provides fully featured, private Git repositories hosted on Google Cloud
    2. To use a hosted Git repository with Cloud Source Repositories, users must open an account with GitHub or Bitbucket
    3. Cloud Source Repositories can be used for collaborative, version-controlled development
    4. Users of the Debugger can view debugging information alongside code during app runtime
    5. Users can add Cloud Source Repositories to a local Git repository as a remote, or connect it to a hosted repository on GitHub or Bitbucket
    6. From a local repository, users can use the standard set of Git commands to interact with the repository in the cloud, including push, pull, clone, and log
    7. Cloud Source Repositories are intended to store only the source code for user apps and not user or personal data
    8. Users can create multiple repositories for a single Google Cloud project
    9. Users can connect an existing GitHub or Bitbucket repository to Cloud Source Repositories
    10. Connected repositories are synchronized with Cloud Source Repositories automatically
    11. Cloud Source Repositories provides a source browser to view repository files from within the Google Cloud Console
    12. Cloud Source Repositories automatically send logs on repository activity to Cloud Logging to help track and troubleshoot data access
    13. Users can use logs to review recent repository synchronization, repository access by other users, and administrative actions such as creations, deletions, and permission changes
    14. Users can configure notification settings such that an alert is sent when an error is logged during a repository synchronization
    15. Cloud Source Repositories offer security key detection to block git push transactions that contain sensitive information
  2. Notifications
    1. Publishes messages about repository to named resources called topics
    2. Apps subscribed to Pub/Sub topics can receive these messages
    3. Alerts can be received when repository state changes
    4. Can configure roles and permissions for Pub/Sub topics
    5. Can configure repositories to publish events to a Pub/Sub topic
    6. Can set the scope of the configuration to be the entire Google Cloud project or an individual repository
    7. Cloud Source Repositories can publish messages to a specified Pub/Sub topic using a service account
    8. With audit logging enabled for Pub/Sub, the service account is the caller of the Pub/Sub APIs
    9. Pub/Sub can notify when a user creates a repository, deletes a repository, or pushes a commit to a repository
    10. Each event is a specific event type
  3. IAM
    1. Cloud Source Repositories uses Cloud IAM for access control
    2. Cloud IAM can be used to add team members to projects and to grant them permissions to create, view, and update repositories
    3. Every action on a repository in Cloud Source Repositories requires that the account initiating the action has the appropriate permissions
    4. Permissions are not granted to specific accounts, but roles that contains the appropriate set of permissions are assigned to members
    5. Permissions are assigned to accounts through the use of roles
    6. In addition to the predefined roles, Cloud Source Repositories supports custom roles
    7. In Cloud IAM, access is granted to members
    8. There are multiple types of members
    9. A Google Cloud repository cannot be made public
    10. Cloud Source Repositories does not support allAuthenticatedUsers and allUsers member types