author | wenzelm |
Mon, 17 Dec 2012 14:51:34 +0100 | |
changeset 50576 | 325bf9073c59 |
parent 48779 | 71136069089d |
permissions | -rw-r--r-- |
48779
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
1 |
Notes on central Isabelle repository |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
2 |
==================================== |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
3 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
4 |
* direct file-system access (locally or remotely via ssh) |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
5 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
6 |
* permissions via dedicated Unix group "isabelle" |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
7 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
8 |
* See http://mercurial.selenic.com/wiki/RequiresFile on physical format, with |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
9 |
conservative requirements for Mercurial 1.3 as lowest common denominator: |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
10 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
11 |
revlogv1 |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
12 |
store |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
13 |
fncache |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
14 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
15 |
* See http://mercurial.selenic.com/wiki/MultipleCommitters for old-fashioned |
50576
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
16 |
CVS-like multiple committers configuration, "The filesystem method". |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
17 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
18 |
A fresh multi-user clone is initialized like this: |
48779
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
19 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
20 |
hg --config format.dotencode=0 init isabelle-clone |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
21 |
cd isabelle-clone |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
22 |
chgrp -R isabelle .hg |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
23 |
chmod g+s .hg .hg/store |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
24 |
mkdir .hg/strip-backup ## Not to be used under normal circumstances! |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
25 |
chmod -R g+w .hg |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
26 |
|
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
27 |
Now isabelle-clone is ready for push of repository data (without making |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
28 |
a working directory). |
71136069089d
some information for central Isabelle repository configuration;
wenzelm
parents:
diff
changeset
|
29 |
|
50576
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
30 |
* Addressing technical issues: according to |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
31 |
http://mercurial.selenic.com/wiki/PublishingRepositories our shared disk |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
32 |
configuration (after regular ssh login) is characterized as follows: |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
33 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
34 |
Advantages: can use existing setup |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
35 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
36 |
Disadvantages: generally restricted to intranets, not generally |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
37 |
recommended due to general issues with network filesystem reliability |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
38 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
39 |
Due to NFS instabilities of unknown origin at TUM, drop-outs have |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
40 |
happened before. The following measures of last resort can be applied: |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
41 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
42 |
(a) "hg verify" to find offending changesets |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
43 |
"hg strip REV" to remove parts of the public history by vivisection |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
44 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
45 |
(b) fresh clone from known-good source as explained above |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
46 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
47 |
Note that any such non-monotonic changes on the central push area work |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
48 |
under the assumption of sequential single-user mode!! |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
49 |
|
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
50 |
See also http://mercurial.selenic.com/wiki/RepositoryCorruption for |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
51 |
further background information. |
325bf9073c59
more hints on technical issues due to shared-disk access of central Mercurial repository;
wenzelm
parents:
48779
diff
changeset
|
52 |