title: List all changed files with change status between Git commits (added, modified, deleted)
body: <p>I regularly use the following command to list files changed between two commits:</p>
  
  <pre><code>git diff --name-only SHA1 SHA2
  </code></pre>
  
  <p>It gives a list of files somewhat like this:</p>
  
  <pre>
  /src/example/file1
  /src/example/file2
  /src/example/file3
  </pre>
  
  <p>There is almost no end to how useful this is.</p>
  
  <p><strong>I'd really like to be able also to show alongside each file a brief reference to the change status, indicating whether a file was added, modified or deleted.</strong></p>
  
  <p>Here's an example to demonstrate the concept:</p>
  
  <pre><code>git diff --name-only --and-how-me-the-change-status SHA1 SHA2
  </code></pre>
  
  <pre>
  A /src/example/file1
  M /src/example/file2
  D /src/example/file3
  </pre>
  
  <p>The change status (A, M, D) is shown as an example only, I don't mind what this is so long as it is unambiguous.</p>
  
  <p>I'm aware that I can use the <code>--diff-filter</code> option to list only added files, or only modified files or only deleted files. Using this option means I have to run three commands to get three lists of filenames. This is nice but could be nicer.</p>
  
  <p><strong>Is there a single command I can run to give me the above example output?</strong></p>