The generated output file has CRLF-terminated lines. This isn't great, and git doesn't like it accordingly.
This seems to be related to how argparse opens the file. The csv documentation explains that the file should be opened with newline=''. However, right now argparse's FileType doesn't seem to accept that option yet.