annotate docs/usage/locking.rst @ 5107:5153c491a964

comments: show status changes as a part of the comment instead of in the header This makes it obvious what the user said and there is no reason to explain what he is saying or where he is saying it. Comments will always have a text or a status change - there is no need for "No comments".
author Mads Kiilerich <madski@unity3d.com>
date Thu, 07 May 2015 16:26:40 +0200
parents 8d065db04909
children 5ae8e644aa88
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
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
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
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.