Share

Invite another XO user to a copy of a space or a project. They see the invite, accept it into their own spaces, or reject it.

xo share puts an invite in another XO user's list. Nothing else of theirs changes, and nothing of theirs is shown to you.

xo share space:web bob                # invite bob to a copy of web: its name and projects
xo share project:pallets/flask bob    # invite bob to the Flask project

Only GitHub projects are shared, since nobody else could install a local one, and a space's local projects are left out of its invite.

Accept or reject

xo list shared                                # the invites waiting on you, each with an id
xo accept 0123abcd0123abcd                    # a shared space: shows it, asks, then adds it as yours
xo accept 0123abcd0123abcd --as web2          # the same, when you already have a space called web
xo accept 4567cdef4567cdef --space web        # a shared project: into your space web, at main
xo reject 0123abcd0123abcd                    # take it off; its sender can share it again
  • Accepting a space copies its name and projects into your own spaces, as a new space. Accepting a project puts it in the space you name with --space, at --ref (default main). Either way its projects join your projects too, so xo install can use them.
  • After that, changes on either side do not reach the other.
  • An invite sent again gets a new id, so xo accept never takes something other than what you saw. xo list shared shows each sender's username.
  • A share to a username that does not exist, or whose list is full, gets the same "could not share" answer. Invites together take at most 1.5 KB of the 6 KB your account holds; accepting or rejecting one gives its room back.

On this page