title: What does "[]" or "<>" mean in some command document?
body: <p>In some command documents, there are often "[]" or "&lt;>". For example:</p>
  
  <pre><code>git diff [options] [&lt;commit&gt;] [--] [&lt;path&gt;…​]
  git diff [options] --cached [&lt;commit&gt;] [--] [&lt;path&gt;…​]
  git diff [options] &lt;commit&gt; &lt;commit&gt; [--] [&lt;path&gt;…​]
  </code></pre>
  
  <p>What does that mean?</p>