Finite Element Discretization Library
__
_ __ ___ / _| ___ _ __ ___
| '_ ` _ \ | |_ / _ \| '_ ` _ \
| | | | | || _|| __/| | | | | |
|_| |_| |_||_| \___||_| |_| |_|
https://mfem.org
This directory contains recommended git hooks, which are scripts that can be used to improve your development experience with MFEM:
-
pre-commit
is a hook that will be applied before each commit and runastyle
on the code. This will ensure that your changes comply with the MFEM code styling guidelines. -
pre-push
is a hook that will be applied before each push to run a quick set of tests that verify that your files headers are in compliance, and that you did not add any large files to the repo.
To setup the git hooks, run make hooks
, which creates symlinks to the hooks in
the .git/hooks
directory. Individual hooks can be enabled by manually creating
symlinks.
(You may also copy the scripts directly and customize them further, but this way you may miss additional updates in the future.)
The branch-history
check can fail in some cases when the history is OK. For
example, when a large number of files were modified for a legitimate reason, or
when a picture was added for documentation.
If that is the case, make sure the failure is indeed justified, and rerun the
push command with the --no-verify
option. This will skip the hooks, allowing
you to push those changes.