equal
deleted
inserted
replaced
9 First, unpack the source: |
9 First, unpack the source: |
10 |
10 |
11 $ tar xvzf mercurial-<ver>.tar.gz |
11 $ tar xvzf mercurial-<ver>.tar.gz |
12 $ cd mercurial-<ver> |
12 $ cd mercurial-<ver> |
13 |
13 |
|
14 When installing, change python to python2.3 or python2.4 if 2.2 is the |
|
15 default on your system. |
|
16 |
14 To install system-wide: |
17 To install system-wide: |
15 |
18 |
16 $ python setup.py install # change python to python2.3 if 2.2 is default |
19 $ python setup.py install --force |
17 |
20 |
18 To install in your home directory (~/bin and ~/lib, actually), run: |
21 To install in your home directory (~/bin and ~/lib, actually), run: |
19 |
22 |
20 $ python2.3 setup.py install --home=~ |
23 $ python setup.py install --home=${HOME} --force |
21 $ export PYTHONPATH=${HOME}/lib/python # (or lib64/ on some systems) |
24 $ export PYTHONPATH=${HOME}/lib/python # (or lib64/ on some systems) |
22 $ export PATH=${HOME}/bin:$PATH # add these to your .bashrc |
25 $ export PATH=${HOME}/bin:$PATH # add these to your .bashrc |
23 |
26 |
24 And finally: |
27 And finally: |
25 |
28 |
28 If you get complaints about missing modules, you probably haven't set |
31 If you get complaints about missing modules, you probably haven't set |
29 PYTHONPATH correctly. |
32 PYTHONPATH correctly. |
30 |
33 |
31 Setting up a Mercurial project: |
34 Setting up a Mercurial project: |
32 |
35 |
33 $ cd project/ |
36 $ hg init project # creates project directory |
34 $ hg init # creates .hg |
37 $ cd project |
35 $ hg addremove # add all unknown files and remove all missing files |
38 # copy files in, edit them |
36 $ hg commit # commit all changes, edit changelog entry |
39 $ hg add # add all unknown files |
|
40 $ hg remove --after # remove deleted files |
|
41 $ hg commit # commit all changes, edit changelog entry |
37 |
42 |
38 Mercurial will look for a file named .hgignore in the root of your |
43 Mercurial will look for a file named .hgignore in the root of your |
39 repository which contains a set of regular expressions to ignore in |
44 repository which contains a set of regular expressions to ignore in |
40 file paths. |
45 file paths. |
41 |
46 |
45 $ cd linux-work |
50 $ cd linux-work |
46 $ <make changes> |
51 $ <make changes> |
47 $ hg commit |
52 $ hg commit |
48 $ cd ../linux |
53 $ cd ../linux |
49 $ hg pull ../linux-work # pull changesets from linux-work |
54 $ hg pull ../linux-work # pull changesets from linux-work |
50 $ hg update -m # merge the new tip from linux-work into |
55 $ hg merge # merge the new tip from linux-work into |
51 # our working directory |
56 # our working directory |
52 $ hg commit # commit the result of the merge |
57 $ hg commit # commit the result of the merge |
53 |
58 |
54 Importing patches: |
59 Importing patches: |
55 |
60 |
56 Fast: |
61 Fast: |
57 $ patch < ../p/foo.patch |
62 $ patch < ../p/foo.patch |
58 $ hg addremove |
63 $ hg commit -A |
59 $ hg commit |
|
60 |
64 |
61 Faster: |
65 Faster: |
62 $ patch < ../p/foo.patch |
66 $ patch < ../p/foo.patch |
63 $ hg commit `lsdiff -p1 ../p/foo.patch` |
67 $ hg commit `lsdiff -p1 ../p/foo.patch` |
64 |
68 |
85 # pushing changes to a remote repo with SSH |
89 # pushing changes to a remote repo with SSH |
86 foo$ hg push ssh://user@example.com/~/hg/ |
90 foo$ hg push ssh://user@example.com/~/hg/ |
87 |
91 |
88 # merge changes from a remote machine |
92 # merge changes from a remote machine |
89 bar$ hg pull http://foo/ |
93 bar$ hg pull http://foo/ |
90 bar$ hg update -m # merge changes into your working directory |
94 bar$ hg merge # merge changes into your working directory |
91 |
95 |
92 # Set up a CGI server on your webserver |
96 # Set up a CGI server on your webserver |
93 foo$ cp hgweb.cgi ~/public_html/hg/index.cgi |
97 foo$ cp hgweb.cgi ~/public_html/hg/index.cgi |
94 foo$ emacs ~/public_html/hg/index.cgi # adjust the defaults |
98 foo$ emacs ~/public_html/hg/index.cgi # adjust the defaults |
95 |
99 |