Collaborative editing¶
Multiple people can work on the same Silex site using GitLab's collaboration features. Each save creates a Git commit, so you get version history.
Two things to remember:
- Each collaborator needs their own GitLab account and access to the project.
- One person at a time. When two people edit the site at the same time, the last one to save replaces the work of the other, even on another page.
Inviting collaborators¶
- Open your project on GitLab (the link is in Silex's publish dialog)
- Go to Settings → Members
- Click Invite members
- Enter their GitLab username or email
- Choose a role:
| Role | Can edit in Silex | Can publish | Can change settings |
|---|---|---|---|
| Guest | No | No | No |
| Reporter | View only | No | No |
| Developer | Yes | Yes | No |
| Maintainer | Yes | Yes | Yes |
For most collaborators, Developer is the right role — they can edit and publish but can't change project settings.
How collaboration works with Git¶
Every time someone saves in Silex, the whole site is saved as a commit in GitLab. This means you can see who changed what and when (GitLab → Repository → Commits).
What happens if two people edit at the same time¶
Silex saves the whole site as it is in the editor of the person who saves. It does not merge anything. For example:
- Alice and Bob open the site
- Alice changes a title and saves
- Bob, whose editor still shows the site as it was before Alice saved, changes a color on another page and saves
The site now has Bob's color, but not Alice's title: her change is lost. It is still in the GitLab commit history.
Best practices¶
- Communicate. Tell your team when you start and when you stop editing, so that only one person edits at a time.
- Reload the editor before you start. The editor loads the site when it opens: reload it to get the others' changes.
Common mistakes¶
- Keeping the editor open for days. If someone else saved in the meantime, your next save replaces their work.
Learn more¶
- Publish to GitLab — the full publishing guide
- How publishing works — understanding the build pipeline
- GitLab collaboration docs — inviting members and managing roles
- Forkable Websites and Templates — vote for one-click forking of sites
- Version Control — vote for built-in version history
Quiz¶
Q1: You want a colleague to edit the site but not change project settings. What role should you assign?
- A) Guest
- B) Developer
- C) Maintainer
Answer
B) Developer — they can edit and publish but cannot change project settings like members or CI/CD configuration.
Q2: Two people edited different pages at the same time and both saved. What happens?
- A) The second save fails
- B) Git merges both changes automatically
- C) The changes of the first person to save are lost
Answer
C) The changes of the first person to save are lost — Silex saves the whole site as it is in the editor, and does not merge changes.
Q3: You notice something looks wrong on the live site after a colleague changed it. How do you check what changed?
- A) Ask your colleague what they did
- B) Check GitLab → Repository → Commits to see the exact changes
- C) Republish your version to overwrite theirs
Answer
B) Check GitLab → Repository → Commits — every save creates a commit with a full diff of what changed.