git-linter/strategies.html

142 lines
4.9 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Strategies &#8212; Git Lint 0.0.7 documentation</title>
<link rel="stylesheet" href="static/alabaster.css" type="text/css" />
<link rel="stylesheet" href="static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '0.0.7',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="static/jquery.js"></script>
<script type="text/javascript" src="static/underscore.js"></script>
<script type="text/javascript" src="static/doctools.js"></script>
<link rel="top" title="Git Lint 0.0.7 documentation" href="index.html" />
<link rel="stylesheet" href="static/custom.css" type="text/css" />
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
</head>
<body role="document">
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="strategies">
<h1>Strategies<a class="headerlink" href="#strategies" title="Permalink to this headline"></a></h1>
<p>git-lint has a couple of phases in which it develops its strategy for what to run:</p>
<ol class="arabic">
<li><p class="first">Load the configuration file.
a. On the command line?
b. In the base directory as .git-lint?
c. In the base directory as .git-lint/config?
d. In the user&#8217;s home directory as .git-lint?
e. In the user&#8217;s home directroy as .git-lint/config?</p>
</li>
<li><p class="first">Prune configuration with <code class="docutils literal"><span class="pre">-o</span></code> or <code class="docutils literal"><span class="pre">-e</span></code> options</p>
</li>
<li><p class="first">Determine which files to lint.
a. Workspace or staging?</p>
<blockquote>
<div><ol class="lowerroman simple">
<li>If staging, record all stashed timestamps for restoration</li>
</ol>
</div></blockquote>
<ol class="loweralpha" start="2">
<li><dl class="first docutils">
<dt>From this list:</dt>
<dd><ol class="first last lowerroman simple">
<li>All changed files <code class="docutils literal"><span class="pre">-b</span></code></li>
<li>All changed files in the current directory and down (default)</li>
<li>All files in the current directory and down. <code class="docutils literal"><span class="pre">-a</span></code></li>
<li>All files in the repository <code class="docutils literal"><span class="pre">-a</span> <span class="pre">-b</span></code></li>
</ol>
</dd>
</dl>
</li>
<li><p class="first">Add files from command line, if any.</p>
</li>
<li><p class="first">Filter based on match criteria in configuration file.</p>
</li>
</ol>
</li>
<li><p class="first">For each file, run the appropriate linter.
a. If in delta mode <code class="docutils literal"><span class="pre">-d</span></code>, only show differences that correspond to user changes.
b. Capture failure output and failure status.</p>
</li>
<li><p class="first">Reduce failure status to pass/fail</p>
</li>
<li><p class="first">Print resulting messages and exit with failure status (for pre-commit).</p>
</li>
<li><p class="first">If staging, unstage and touch-up files to restore timestamps.</p>
</li>
</ol>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper"><div class="relations">
<h3>Related Topics</h3>
<ul>
<li><a href="index.html">Documentation overview</a><ul>
</ul></li>
</ul>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="sources/strategies.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<div><input type="text" name="q" /></div>
<div><input type="submit" value="Go" /></div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
&copy;2016, Kenneth M. "Elf" Sternberg.
|
Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.6</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.9</a>
|
<a href="sources/strategies.txt"
rel="nofollow">Page source</a>
</div>
</body>
</html>