title: Can git commit "empty versions" of new, non-empty files?
body: <p>Can git commit empty versions of some files?  The case in point is that I need new (untracked), non-empty files to first be added and committed as <em>empty</em> files, so as to mark their contents as being new and to be reviewed (the full, untracked file should <em>not</em> be added to the index; <code>git diff</code> should show the newly added contents by comparing the file to its committed empty version).</p>
  
  <p>There is <code>git add -N file…</code>, which puts <code>file</code> with an empty content in the index, but this only says that <code>file</code> <em>will be added</em>, and <code>git commit</code> complains that the file has not been added.  The thing is that the current, non-empty version is not what has to be added, but only an empty version of the new file.</p>
  
  <p>Is there a way to do this?</p>
  
  <p>PS: This question is asked in the context of a program that automatically adds files to a git repository (my program follows what code students write).  Uncommitted code is code that I have yet to approve.  Thus, the state in which a program created by a student starts should be the <em>empty</em> state, even though my program just found a new, non-empty program in their home directory; this is handled by automatically committing a new, empty version of any new student program file in a git repository.  Thus, new code lines that they write appear as being newly added contents, compared to the last committed git revision.</p>