Commits

Alan Franzoni committed ea02b02

Enh: markdown syntax highlighting

Comments (0)

Files changed (2)

README

-hgskipcommit - by Alan Franzoni
-homepage: http://hgskipcommit.franzoni.eu
-
-intro
---
-
-Skip some files when committing, something like "ignore on commit"
-
-Use case: even though it would be better to commit a template on a vcs - that
-every user or developer can then copy and customize, there are some situations
-where that's not possible, mostly because some externally managed software
-(e.g. a library, framework, or IDE) insists on using or modifying certain
-well-known filenames.
-
-If developers, then, inadvertently modify and commit such files, many problem
-could arise.
-
-This extension provides a simple way to prevent it; if a "wild commit" (i.e. a
-commit without file selection) occurs, any file matching the hgskipcommit
-pattern won't get committed, and will just stay modified on the repo.
-
-how it works
---
-whenever a commit without file selection is issued, the hgskipcommit pattern is
-taken into account and just added to the 'exclude' options for commit; the very
-same functionality can be achieved via command line -X option.
-
-If at least one target file to be committed is passed on the command line this
-extension performs no action.
-
-install
---
-
-in your $HOME/.hgrc, enable the extension:
-
-[extensions]
-hgskipcommit=PATH/TO/hgskipcommit.py
-
-
-configuration
---
-
-configuration, just like any mercurial config value, can be done system-wide,
-per user, or per repo. In the hgrc you choose, just add the section and
-configure the pattern value.
-
-Small notice: at the time of this writing, patterns are not additive; anything
-specified in an higher priority config file just overrides the lower priority
-setting. Priority in descending order is repo -> user -> system.
-
-Example: skip committing config files from the most well-known IDEs, since
-they often pollute commits.
-
-[hgskipcommit]
-pattern = path:.idea path:nbproject path:.project path:.settings
-
-
-pattern syntax
---
-pattern syntax just follows mercurial patterns - see 'hg help patterns' for
-more information.
-
-Be aware that setting an absolute exclude (relative to repository root) will 
-probably require a path: or re: file pattern, otherwise it'll be interpreted as
-an exclude relative to the current directory.
-
-current status and drawbacks
---
-configuration is currently handled as extensions configuration, so it's not
-shared between repositories. If there're requests I may make a change and adopt
-an .hgignore like approach that could be shared between repositories.
+# hgskipcommit
+
+
+Author: [Alan Franzoni](www.franzoni.eu)
+
+Project Homepage: [http://hgskipcommit.franzoni.eu](http://hgskipcommit.franzoni.eu)
+
+## intro
+
+Mercurial extension that allows to skip some files when committing, something like "ignore on commit".
+
+### Use case
+Even though it would be better to commit a template on a vcs - that
+every user or developer can then copy and customize, there are some situations
+where that's not possible, mostly because some externally managed software
+(e.g. a library, framework, or IDE) insists on using or modifying certain
+well-known filenames.
+
+If developers, then, inadvertently modify and commit such files, many problem
+could arise.
+
+This extension provides a simple way to prevent it; if a "wild commit" (i.e. a
+commit without file selection) occurs, any file matching the hgskipcommit
+pattern won't get committed, and will just stay modified on the repo.
+
+### how it works
+Ehenever a commit without file selection is issued, the hgskipcommit pattern is
+taken into account and just added to the 'exclude' options for commit; the very
+same functionality can be achieved via command line -X option.
+
+If at least one target file to be committed is passed on the command line this
+extension performs no action.
+
+### install
+
+after cloning the repo or getting the tarball, edit your $HOME/.hgrc, and enable the extension:
+
+    [extensions]
+    hgskipcommit=PATH/TO/hgskipcommit.py
+
+
+### configure
+
+Configuration, just like any mercurial config value, can be done system-wide,
+per user, or per repo. In the hgrc you choose, just add the section and
+configure the pattern value.
+
+Small notice: at the time of this writing, patterns are not additive; anything
+specified in an higher priority config file just overrides the lower priority
+setting. Priority in descending order is repo -> user -> system.
+
+#### example
+
+Skip committing config files from the most well-known IDEs, since
+they often pollute commits
+
+    [hgskipcommit]
+    pattern = path:.idea path:nbproject path:.project path:.settings path:*.iml
+
+### pattern syntax
+
+pattern syntax just follows [mercurial patterns](http://www.selenic.com/mercurial/hg.1.html#file-name-patterns) - see `hg help patterns' 
+more information.
+
+Be aware that setting an absolute exclude (relative to repository root) will 
+probably require a path: or re: file pattern, otherwise it'll be interpreted as
+an exclude relative to the current directory.
+
+### current status and known issues
+
+coCfiguration is currently handled as extensions configuration, so it's not
+shared between repositories. If there're requests I may make a change and adopt
+an .hgignore like approach that could be shared between repositories.