annotate docs/usage/locking.rst @ 7445:a33d1337db05

tests: remove tests of UI notifications This commit is part of the removal of the UI notification feature from Kallithea, which is not deemed useful in its current form. Only email notifications are preserved.
author Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
date Wed, 05 Dec 2018 07:40:00 +0100
parents 5ae8e644aa88
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
1 .. _locking:
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
2
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
3 ==================
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
4 Repository locking
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
5 ==================
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
6
5425
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
7 Kallithea has a *repository locking* feature, disabled by default. When
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
8 enabled, every initial clone and every pull gives users (with write permission)
4902
03bbd33bc084 docs: rework stuff
Mads Kiilerich <madski@unity3d.com>
parents: 4192
diff changeset
9 the exclusive right to do a push.
03bbd33bc084 docs: rework stuff
Mads Kiilerich <madski@unity3d.com>
parents: 4192
diff changeset
10
5425
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
11 When repository locking is enabled, repositories get a ``locked`` flag.
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
12 The hg/git commands ``hg/git clone``, ``hg/git pull``,
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
13 and ``hg/git push`` influence this state:
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
14
5425
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
15 - A ``clone`` or ``pull`` action locks the target repository
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
16 if the user has write/admin permissions on this repository.
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
17
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
18 - Kallithea will remember the user who locked the repository so only this
5425
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
19 specific user can unlock the repo by performing a ``push``
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
20 command.
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
21
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
22 - Every other command on a locked repository from this user and every command
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
23 from any other user will result in an HTTP return code 423 (Locked).
5425
5ae8e644aa88 docs: spelling, grammar, content and typography
Søren Løvborg <sorenl@unity3d.com>
parents: 4973
diff changeset
24 Additionally, the HTTP error will mention the user that locked the repository
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
25 (e.g., “repository <repo> locked by user <user>”).
2726
aa17c7a1b8a5 Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff changeset
26
4973
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
27 Each repository can be manually unlocked by an administrator from the
8d065db04909 docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents: 4955
diff changeset
28 repository settings menu.