title: How git cherry-pick a range of commits?
body: <p>I saw that there is a connection between <code>rebase</code> and <code>cherry-pick</code> a range of commits.</p>
  
  <p>I have failed to find any article/toturial which explain what exactly happands when one try to <code>cherry-pick</code> multiple commits.</p>
  
  <p>Some questions (which I can think of) are:</p>
  
  <ol>
  <li>What <code>CHERRY_PICK_HEAD</code> ref is?</li>
  <li>By running <code>git cherry-pick 2^..4</code>, what is the sequence of actions git does and <strong>exactly between which commits git use <code>diff</code></strong>?</li>
  </ol>
  
  <p><a href="https://i.stack.imgur.com/ako3J.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/ako3J.jpg" alt="enter image description here"></a></p>
  
  <ol start="3">
  <li>By running <code>git cherry-pick 1..8</code>, what git will do?</li>
  </ol>
  
  <p><a href="https://i.stack.imgur.com/W0ahC.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/W0ahC.jpg" alt="enter image description here"></a></p>