Mercurial > kallithea
annotate docs/usage/locking.rst @ 4998:177ccc998b04
tests: Remove imported_from_test function
AFAICT, this function is not used:
$ ag imported_from_test
kallithea/tests/nose_parametrized.py
144:def imported_from_test():
author | Marc Abramowitz <marc@marc-abramowitz.com> |
---|---|
date | Wed, 08 Apr 2015 13:48:30 -0700 |
parents | 8d065db04909 |
children | 5ae8e644aa88 |
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 |
4973
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
7 Kallithea has a ``repository locking`` feature, disabled by default. When |
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 | 9 the exclusive right to do a push. |
10 | |
4973
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
11 When repository locking is enabled, repositories get a ``locked`` state that |
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
12 can be true or false. The hg/git commands ``hg/git clone``, ``hg/git pull``, |
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 |
4973
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
15 - A ``clone`` or ``pull`` action on the repository locks it (``locked=true``) |
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 |
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
19 specific user can unlock the repo (``locked=false``) by performing a ``push`` |
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). |
8d065db04909
docs/usage: rework section 'repository locking'
Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
parents:
4955
diff
changeset
|
24 Additionally, the HTTP error includes the <user> that locked the repository |
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. |