Mercurial > kallithea
annotate docs/usage/locking.rst @ 4954:14f063657078
i18n: updated translation for Dutch (Belgium)
Currently translated at 0.8% (9 of 1077 strings)
author | Sam Jaques <sam.jaques@me.com> |
---|---|
date | Tue, 31 Mar 2015 16:25:49 +0000 |
parents | 03bbd33bc084 |
children | 4e6dfdb3fa01 |
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 |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
3 =================================== |
4192
e73a69cb98dc
Rename some strings examples and commands in documentation
Bradley M. Kuhn <bkuhn@sfconservancy.org>
parents:
3224
diff
changeset
|
4 Kallithea repository locking system |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
5 =================================== |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
6 |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
7 |
4902 | 8 The scenario for repos with `locking function` enabled is that |
9 every initial clone and every pull gives users (with write permission) | |
10 the exclusive right to do a push. | |
11 | |
12 Each repo can be manually unlocked by admin from the repo settings menu. | |
13 | |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
14 | Repos with **locking function=disabled** is the default, that's how repos work |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
15 today. |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
16 | Repos with **locking function=enabled** behaves like follows: |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
17 |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
18 Repos have a state called `locked` that can be true or false. |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
19 The hg/git commands `hg/git clone`, `hg/git pull`, and `hg/git push` |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
20 influence this state: |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
21 |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
22 - The command `hg/git pull <repo>` will lock that repo (locked=true) |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
23 if the user has write/admin permissions on this repo |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
24 |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
25 - The command `hg/git clone <repo>` will lock that repo (locked=true) if the |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
26 user has write/admin permissions on this repo |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
27 |
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
28 |
4902 | 29 Kallithea will remember the user id who locked the repo so |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
30 only this specific user can unlock the repo (locked=false) by calling |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
31 |
3224
8b8edfc25856
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
2726
diff
changeset
|
32 - `hg/git push <repo>` |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
33 |
4902 | 34 Every other command on that repo from this user and |
35 every command from any other user will result in http return code 423 (locked). | |
2726
aa17c7a1b8a5
Implemented basic locking functionality.
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
36 |
4902 | 37 Additionally, the http error includes the <user> that locked the repo |
38 (e.g. “repository <repo> locked by user <user>”). |