Collaborating with Other Developers on Your App

Last Updated: 26 March 2015

cli collaboration

Table of Contents

This article shows app owners how to share their app with collaborators.

If you are a collaborator, see Getting Started as a Collaborator.

Collaborator privileges

Collaborators can perform any action that an owner can, except collaborators can not:

  • Add or remove paid add-ons
  • Delete or rename the app
  • View invoices

These are the only actions that are restricted. Collaborators can perform any other action that an owner can, including scaling applications.

Add collaborators

Other developers can be invited to collaborate on your app by their email address:

$ heroku sharing:add
Adding to myapp collaborators... done

When you invite a collaborator, an email is sent to let them know they were granted access to the app. If no existing Heroku account matches the email specified, an invitation email is sent.

View collaborators

Use the heroku sharing command to see the list of current collaborators:

$ heroku sharing
=== theirapp Collaborators owner  collaborator

Remove collaborators

You can revoke a collaborator’s access using the heroku sharing:remove command:

$ heroku sharing:remove
Removing from theirapp collaborators... done

Once access has been revoked, the user is no longer able to deploy changes or modify the app’s configuration.

Merging code changes

When you’re collaborating with other developers, you might be prevented from pushing to the repo and see a message like this:

$ git push heroku
error: remote 'refs/heads/master' is not a strict subset of local ref 'refs/heads/master'.
maybe you are not up-to-date and need to pull first?

This means that other developers have pushed up changes that you need to pull down and merge with your local repository. The easiest way to do this is to run git pull --rebase. Ensure your changes don’t conflict with what you pulled down before deploying.