Organizations
An organization is a shared home for repositories. Where your personal repos
live under your username — yourname/project — an organization's repos live
under the organization's name, like acme/project. Everyone you add to the
organization can see and work on its repositories, so it's the natural setup
for a team, a company, or a class.
The part before the slash is called a namespace. Every repository in Merget
is addressed as namespace/repo-name, and a namespace is either a user or an
organization. This page is about the organization kind.
Creating an organization
Open the dashboard and click the heading at the top — it reads Personal Repositories when you're looking at your own repos. A dropdown opens with your account, your organizations, and a New Organization option at the bottom.
Picking New Organization walks you through two quick steps:
- Details. Give the organization a name, and optionally invite people right away by searching for their username. Anyone you add here joins as a regular member; you can always invite more people later from the organization's settings.
- Avatar. Pick an image for the organization. This is also changeable later.
Click Create and you're done. The dashboard switches to the new organization automatically.
Switching between Personal and an organization
The same dropdown is how you move around. Pick Personal to see your own repositories, or pick an organization to see its repositories. The choice sticks — the dashboard reopens to whatever you had selected last time.
While an organization is selected, repositories you create or import land in that organization's namespace instead of your personal one. That's the main thing to watch: check the heading before you create a repo, so it ends up where you expect.
Organization settings
Each organization in the dropdown has a small gear icon. Click it to open the settings dialog, which has two tabs:
General lets you change the avatar, rename the organization (edit the name field and click away to save), and — at the bottom — delete it.
Members lists everyone in the organization with their role and the date they joined. From here you can:
- Invite people. Click Invite, search by username, pick one or more people, and confirm. New members join with the Member role.
- Change someone's role. Use the role dropdown on their row. You can't change your own role.
- Remove someone. Use the remove button on their row. They lose access to the organization, but their account is untouched. You can't remove yourself.
Roles
Organizations have three roles:
| Role | What it can do |
|---|---|
| Owner | Everything, including deleting the organization. |
| Admin | Invite and remove members, change roles, rename the organization and change its avatar, and create repositories in the organization. Can't delete the organization. |
| Member | Work on the organization's repositories. Can't manage members or settings. |
Roles also set what people can do inside the organization's repositories: Owners and Admins get full admin access to every repo in the namespace, while Members can view and contribute to them. You can still grant someone extra access to a single repo on top of this — see Sharing a repo.
Repositories in an organization sync to Merget's servers the same way personal ones do, so make sure your team is comfortable with what gets committed — see Sync & privacy.
Deleting an organization
Only an Owner can do this. In the settings dialog's General tab, type the organization's name into the confirmation field and click Delete. This permanently removes the organization along with all of its repositories, members, and data, and it cannot be undone.
Under the hood
Namespaces are the top level of Merget's addressing scheme. Every repository
has exactly one home, written namespace/repo-name, and a namespace is either
a username or an organization. The two share one global pool of names — when
you create an organization, Merget derives a URL-friendly identifier from its
display name, and creation fails if that identifier is already taken. That
same namespace/repo-name string is what you type anywhere Merget asks for a
repository: cloning, adding a remote, or the CLI's push and pull commands all
address repos this way. Renaming an organization changes its display name
only; the identifier that repos are addressed under stays the same.
Next: Sharing a repo · Related: The dashboard · Sync & privacy
