Skip to content

Commit df2c553

Browse files
Deployed to github pages
1 parent 20fad57 commit df2c553

File tree

1 file changed

+67
-2
lines changed

1 file changed

+67
-2
lines changed

index.html

Lines changed: 67 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ <h2 id="quick-start"> Quick start <small><a href="#quick-start" class="text-d
134134
<li><code>pre-commit --version</code> should show you what version you're using</li>
135135
</ul>
136136
<div class="highlight pre-commit"><pre><span></span>$ pre-commit --version
137-
pre-commit 4.4.0
137+
pre-commit 4.5.0
138138
</pre></div>
139139
<h3 id="2-add-a-pre-commit-configuration"> 2. Add a pre-commit configuration <small><a href="#2-add-a-pre-commit-configuration" class="text-decoration-none"></a></small></h3> <ul>
140140
<li>create a file named <code>.pre-commit-config.yaml</code></li>
@@ -1132,7 +1132,72 @@ <h2 id="meta-hooks"> meta hooks <small><a href="#meta-hooks" class="text-deco
11321132
</td></tr><tr><td><p><a id="meta-identity" href="#meta-identity"><code>identity</code></a></p>
11331133
</td><td><p>a simple hook which prints all arguments passed to it, useful for
11341134
debugging.</p>
1135-
</td></tr></tbody></table><h2 id="automatically-enabling-pre-commit-on-repositories"> automatically enabling pre-commit on repositories <small><a href="#automatically-enabling-pre-commit-on-repositories" class="text-decoration-none"></a></small></h2> <p><code>pre-commit init-templatedir</code> can be used to set up a skeleton for <code>git</code>'s
1135+
</td></tr></tbody></table><h2 id="codepre-commit-hazmatcode"> <code>pre-commit hazmat</code> <small><a href="#codepre-commit-hazmatcode" class="text-decoration-none"></a></small></h2> <p>&quot;hazardous materials&quot;</p>
1136+
<p>pre-commit provides a few <code>entry</code> prefix &quot;helpers&quot; for unusual situations.</p>
1137+
<p>in case it's not clear, using these is <em>usually</em> a bad idea.</p>
1138+
<p><em>note</em>: hazmat helpers do not work on languages which adjust <code>entry</code> (<code>docker</code>
1139+
/ <code>docker_image</code> / <code>fail</code> / <code>julia</code> / <code>pygrep</code> / <code>r</code> / <code>unsupported_script</code>).</p>
1140+
<h3 id="codepre-commit-hazmat-cdcode"> <code>pre-commit hazmat cd</code> <small><a href="#codepre-commit-hazmat-cdcode" class="text-decoration-none"></a></small></h3> <p><em>new in 4.5.0</em></p>
1141+
<p>for &quot;monorepo&quot; usage one can use this to target a subdirectory.</p>
1142+
<p>this entry prefix will cd to the target subdir and adjust filename arguments</p>
1143+
<p>example usage:</p>
1144+
<div class="highlight yaml"><pre><span></span><span class="c1"># recommended:</span>
1145+
<span class="c1"># minimum_pre_commit_version: 4.5.0</span>
1146+
<span class="nt">repos</span><span class="p">:</span>
1147+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1148+
<span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1149+
<span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
1150+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example</span>
1151+
<span class="w"> </span><span class="nt">alias</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example-repo1</span>
1152+
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example (repo1)</span>
1153+
<span class="w"> </span><span class="nt">files</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">^repo1/</span>
1154+
<span class="w"> </span><span class="c1"># important! ends with `--`</span>
1155+
<span class="w"> </span><span class="c1"># important! copy `args: [...]` to entry and blank out `args: []`</span>
1156+
<span class="w"> </span><span class="nt">entry</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">pre-commit hazmat cd repo1 example-bin --arg1 --</span>
1157+
<span class="w"> </span><span class="nt">args</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[]</span>
1158+
1159+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example</span>
1160+
<span class="w"> </span><span class="nt">alias</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example-repo2</span>
1161+
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example (repo2)</span>
1162+
<span class="w"> </span><span class="nt">files</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">^repo2/</span>
1163+
<span class="w"> </span><span class="nt">entry</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">pre-commit hazmat cd repo2 example-bin --arg1 --</span>
1164+
<span class="w"> </span><span class="nt">args</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[]</span>
1165+
1166+
<span class="w"> </span><span class="c1"># ... etc.</span>
1167+
</pre></div>
1168+
<h3 id="codepre-commit-hazmat-ignore-exit-codecode"> <code>pre-commit hazmat ignore-exit-code</code> <small><a href="#codepre-commit-hazmat-ignore-exit-codecode" class="text-decoration-none"></a></small></h3> <p><em>new in 4.5.0</em></p>
1169+
<p>it's a bad idea to introduce warning noise but this gives you a way to do it.</p>
1170+
<p>example:</p>
1171+
<div class="highlight yaml"><pre><span></span><span class="c1"># recommended:</span>
1172+
<span class="c1"># minimum_pre_commit_version: 4.5.0</span>
1173+
<span class="nt">repos</span><span class="p">:</span>
1174+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1175+
<span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1176+
<span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
1177+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example</span>
1178+
<span class="w"> </span><span class="c1"># important! copy `args: [...]` to entry and blank out `args: []`</span>
1179+
<span class="w"> </span><span class="nt">entry</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">pre-commit hazmat ignore-exit-code example-bin --arg1 --</span>
1180+
<span class="w"> </span><span class="nt">args</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[]</span>
1181+
<span class="w"> </span><span class="c1"># otherwise the output will always be hidden</span>
1182+
<span class="w"> </span><span class="nt">verbose</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
1183+
</pre></div>
1184+
<h3 id="codepre-commit-hazmat-n1code"> <code>pre-commit hazmat n1</code> <small><a href="#codepre-commit-hazmat-n1code" class="text-decoration-none"></a></small></h3> <p><em>new in 4.5.0</em></p>
1185+
<p>some hooks only take one filename argument. this runs them one at a time
1186+
(which is super slow!)</p>
1187+
<p>example:</p>
1188+
<div class="highlight yaml"><pre><span></span><span class="c1"># recommended:</span>
1189+
<span class="c1"># minimum_pre_commit_version: 4.5.0</span>
1190+
<span class="nt">repos</span><span class="p">:</span>
1191+
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">repo</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1192+
<span class="w"> </span><span class="nt">rev</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
1193+
<span class="w"> </span><span class="nt">hooks</span><span class="p">:</span>
1194+
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example</span>
1195+
<span class="w"> </span><span class="c1"># important! ends with `--`</span>
1196+
<span class="w"> </span><span class="c1"># important! copy `args: [...]` to entry and blank out `args: []`</span>
1197+
<span class="w"> </span><span class="nt">entry</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">pre-commit hazmat n1 example-bin --arg1 --</span>
1198+
<span class="w"> </span><span class="nt">args</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[]</span>
1199+
</pre></div>
1200+
<h2 id="automatically-enabling-pre-commit-on-repositories"> automatically enabling pre-commit on repositories <small><a href="#automatically-enabling-pre-commit-on-repositories" class="text-decoration-none"></a></small></h2> <p><code>pre-commit init-templatedir</code> can be used to set up a skeleton for <code>git</code>'s
11361201
<code>init.templateDir</code> option. This means that any newly cloned repository will
11371202
automatically have the hooks set up without the need to run
11381203
<code>pre-commit install</code>.</p>

0 commit comments

Comments
 (0)