| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 # This .hgrc is recommended for working on the Adblock Plus project. | 1 # This .hgrc is recommended for working on the Adblock Plus project. |
|
Wladimir Palant
2016/02/20 17:50:48
General notes:
1) The order is wrong, obvious stu
Felix Dahlke
2016/02/20 20:16:38
Don't feel nearly as strong about that, changed it
| |
| 2 # | 2 # |
| 3 # When using this as your .hgrc as-is, it provides a nicer user interface and | 3 # When using this as your .hgrc as-is, it provides a nicer user interface and |
| 4 # enables some extensions that are useful for working on any project. | 4 # enables some extensions that are useful for working on pretty much any |
| 5 # project. | |
| 5 # | 6 # |
| 6 # The commented parts are more specific to the Adblock Plus project and might | 7 # The commented parts either do not work on all systems, are a matter of taste, |
| 7 # not make sense if you also work on other Mercurial projects. Have a look and | 8 # or specific to the Adblock Plus project and might not make sense for everyone. |
| 8 # decide for yourself what you want to enable. When you are not working on any | 9 # Have a good look and decide for yourself what you want to enable. |
| 9 # other projects using Mercurial, it is recommended that you uncomment | |
| 10 # everything. | |
| 11 | 10 |
| 12 # Extensions | 11 ## User interface controls |
| 12 [ui] | |
| 13 | |
| 14 # Sets your global user name. If you do not uncomment this, you will have to | |
| 15 # set it on a per-repository basis. | |
| 16 #username = Jane Doe <jdoe@example.com> | |
| 17 | |
| 18 ## Diff (i.e. patch) format configuration | |
| 19 [diff] | |
| 20 | |
| 21 # We use Git's extended diff format which includes more information (such as | |
| 22 # changes to binary files). | |
| 23 git = true | |
| 24 | |
| 25 # Makes diff output include eight lines of context. | |
| 26 unified = 8 | |
| 27 | |
| 28 ## Defaults | |
| 29 # | |
| 30 # These change the default behaviour of common Mercurial commands. | |
| 31 [defaults] | |
| 32 | |
| 33 # `hg log` shows the history of all branches by default, not just that of the | |
| 34 # current branch. The `--graph` option shows this as an ASCII tree and marks | |
| 35 # the revision you are currently at, which makes the history a lot easier to | |
| 36 # read. | |
| 37 log = --graph | |
| 38 | |
| 39 # The "master" bookmark | |
| 40 # | |
| 41 # Most repositories of the Adblock Plus project use bookmarked branches to track | |
| 42 # multiple lines of development. The bookmark for the main line of development | |
| 43 # is, by convention, called "master". | |
| 44 # | |
| 45 # Unless you are working with Mercurial repositories that do not have a "master" | |
| 46 # bookmark, it is recommended that you uncomment the following defaults. | |
| 47 | |
| 48 # `hg clone` updates to the latest changeset on the default branch. When working | |
| 49 # with repositories that have a "master" branch, you will want to update to that | |
| 50 # one instead, which you can do by adding `--updaterev master`. By uncommenting | |
| 51 # the following line, you won't have to worry about that. Note that when | |
| 52 # enabling this, you can still update to the latest changeset in the default | |
| 53 # branch by specifying `--updaterev default`. | |
| 54 #clone = --updaterev master | |
| 55 | |
| 56 # `hg push` and `hg outgoing` will by default include all changesets, including | |
| 57 # bookmarked branches that you might want to just keep locally. To avoid this, | |
| 58 # you need to add `--rev master`. By uncommenting the following two lines, you | |
| 59 # won't have to worry about that. Note that when enabling this, you can still | |
| 60 # push any branch by specifying the `--rev` option. | |
| 61 #push = --rev master | |
| 62 #outgoing = --rev master | |
| 63 | |
| 64 ## Extensions | |
| 13 # | 65 # |
| 14 # Mercurial is, out of the box, fairly minimal. A lot of useful functionality | 66 # Mercurial is, out of the box, fairly minimal. A lot of useful functionality |
| 15 # comes as extensions. Most of the useful extensions are even part of the | 67 # comes as extensions. Most of the useful extensions are even part of the |
| 16 # default Mercurial distribution, but not enabled by default. | 68 # default Mercurial distribution, but not enabled by default. |
| 17 [extensions] | 69 [extensions] |
| 18 | 70 |
| 19 # Pager extension, shows the output of commands like `hg log` in a pager. | 71 # Progress extension, shows an ASCII progress bar for operations that take |
| 20 pager = | |
|
Wladimir Palant
2016/02/20 17:50:48
I don't use that, find it pretty annoying actually
Felix Dahlke
2016/02/20 20:16:38
Hm, didn't think anyone would not want that. So yo
Wladimir Palant
2016/02/22 11:05:26
Yes, I have "log = -l 5" set under [defaults].
| |
| 21 | |
| 22 # Color extension, colours the output of commands lke `hg log`. | |
| 23 color = | |
|
Wladimir Palant
2016/02/20 17:50:48
Same here. While this is usually useful, it produc
Felix Dahlke
2016/02/20 20:16:38
Done.
| |
| 24 | |
| 25 # Progress extension, shows an ASCII progress bar for operations that take, | |
| 26 # longer. | 72 # longer. |
|
Wladimir Palant
2016/02/20 17:50:48
No comma after take.
Felix Dahlke
2016/02/20 20:16:39
Done.
| |
| 27 progress = | 73 progress = |
| 28 | 74 |
| 29 # Rebase extension, provides the `hg rebase` command, see: | 75 # Color extension, colors the output of commands like `hg log`. Enable it if |
| 30 # https://www.mercurial-scm.org/wiki/RebaseExtension | 76 # your terminal supports colors (assuming you like colors). |
| 31 rebase = | 77 #color = |
| 78 | |
| 79 # Pager extension, shows the output of commands like `hg log` in the terminal | |
| 80 # pager (e.g. less) configured below in the [pager] section. | |
| 81 #pager = | |
| 32 | 82 |
| 33 # Record extension, provides the `hg record` command that allows you to make | 83 # Record extension, provides the `hg record` command that allows you to make |
| 34 # partial commits. | 84 # partial commits. |
| 35 record = | 85 record = |
| 36 | 86 |
| 37 # Purge extension, provides the `hg purge` (aliased to `hg clean` command that | 87 # Purge extension, provides the `hg purge` (aliased to `hg clean`) command that |
| 38 # allows you to clean unversioned files. | 88 # allows you to remove unversioned files. |
|
Wladimir Palant
2016/02/20 17:50:48
Nit: You need to close that parenthesis somewhere.
Felix Dahlke
2016/02/20 20:16:38
Done.
| |
| 39 purge = | 89 purge = |
| 40 | 90 |
| 41 # Shelve extension, provides the `hg shelve` command that allows you to set | 91 # Rebase extension, provides the `hg rebase` command, see: |
| 42 # pending changes aside, see: | 92 # https://www.mercurial-scm.org/wiki/RebaseExtension |
| 43 # https://www.mercurial-scm.org/wiki/ShelveExtension | 93 rebase = |
| 44 shelve = | |
|
Wladimir Palant
2016/02/20 17:50:48
I couldn't find any use for that when working with
Felix Dahlke
2016/02/20 20:16:39
Not? I use it on a weekly basis, just like git sta
| |
| 45 | 94 |
| 46 # Strip extension, provides the `hg strip` command that allows you to remove | 95 # Strip extension, provides the `hg strip` command that allows you to remove |
| 47 # existing changesets. | 96 # existing changesets. |
| 48 strip = | 97 strip = |
| 49 | 98 |
| 50 # Histedit extension. Provides the `hg histedit` command that allows you to | 99 # Histedit extension. Provides the `hg histedit` command that allows you to |
| 51 # change and merge existing changesets, see: | 100 # change and merge existing changesets, see: |
| 52 # https://www.mercurial-scm.org/wiki/HisteditExtension | 101 # https://www.mercurial-scm.org/wiki/HisteditExtension |
| 53 histedit = | 102 histedit = |
| 54 | 103 |
| 55 # Configuration for the pager extension, see above. | 104 # Shelve extension, provides the `hg shelve` command that allows you to set |
| 105 # pending changes aside, see: | |
| 106 # https://www.mercurial-scm.org/wiki/ShelveExtension | |
| 107 shelve = | |
| 108 | |
| 109 # Configuration for the pager extension. This doesn't have any effect unless | |
| 110 # you enable the pager extension above. | |
| 56 [pager] | 111 [pager] |
| 57 pager = LESS='FSRX' less | 112 pager = LESS='FSRX' less |
| 58 | |
| 59 # User interface controls | |
| 60 [ui] | |
| 61 # Sets your global user name. If you do not uncomment this, you will have to | |
| 62 # set it on a per-repository basis. | |
| 63 #username = Jane Bloggs <jane@adblockplus.org> | |
|
Wladimir Palant
2016/02/20 17:50:48
I hope we never hire a Jane...
The explanation is
Felix Dahlke
2016/02/20 20:16:38
Is that what happens for you? I always get this:
Wladimir Palant
2016/02/22 11:05:26
Weird, same here - supposedly working like that si
| |
| 64 | |
| 65 # Aliases | |
| 66 # | |
| 67 # These change the default behaviour of common Mercurial commands. | |
| 68 [alias] | |
|
Felix Dahlke
2016/02/20 12:01:37
Any other suggestions for useful aliases I couldn'
| |
| 69 | |
| 70 # `hg log` shows the history of all branches by default, not just that of the | |
| 71 # current branch. The `--graph` option shows this as an ASCII tree, which makes | |
| 72 # the history a lot easier to read. | |
| 73 log = log --graph | |
| 74 | |
| 75 # `hg clone` updates to the tip by default, which is just the latest changeset, | |
| 76 # on any branch. You most likely want to update to the "master" bookmark | |
| 77 # instead, which you can do by adding `--updaterev master`. By uncommenting the | |
| 78 # following alias, you won't have to worry about that: | |
| 79 #clone = clone --updaterev master | |
| 80 | |
| 81 # `hg push` will by default attempt to push all changesets, including bookmarked | |
| 82 # branches that you might want to just keep locally. To avoid this, you need to | |
| 83 # add `--rev master`. By uncommenting the following alias, you won't have to | |
| 84 # worry about that: | |
| 85 #push = push --rev master | |
|
Wladimir Palant
2016/02/20 17:50:47
You are misusing aliases here, you should use [def
Felix Dahlke
2016/02/20 20:16:38
Oh nice, forgot that that's possible. Using aliase
| |
| LEFT | RIGHT |