annotate docs/usage/locking.rst @ 5999:58809814b51d

hooks: set Windows stderr output mode to binary This prevents Python (or the Windows console) from replacing \n with \r\n. The extra \r made exception output show up with empty lines. Assuming we only get text and never binary data on stderr, an alternative solution could be to strip trailing whitespace ...
author domruf <dominikruf@gmail.com>
date Tue, 14 Jun 2016 21:23:51 +0200
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.