• S
    Support RFC 2822 date parsing in fast-import. · 63e0c8b3
    Shawn O. Pearce 提交于
    Since some frontends may be working with source material where
    the dates are only readily available as RFC 2822 strings, it is
    more friendly if fast-import exposes Git's parse_date() function
    to handle the conversion.  This way the frontend doesn't need
    to perform the parsing itself.
    
    The new --date-format option to fast-import can be used by a
    frontend to select which format it will supply date strings in.
    The default is the standard `raw` Git format, which fast-import
    has always supported.  Format rfc2822 can be used to activate the
    parse_date() function instead.
    
    Because fast-import could also be useful for creating new, current
    commits, the format `now` is also supported to generate the current
    system timestamp.  The implementation of `now` is a trivial call
    to datestamp(), but is actually a whole whopping 3 lines so that
    fast-import can verify the frontend really meant `now`.
    
    As part of this change I have added validation of the `raw` date
    format.  Prior to this change fast-import would accept anything
    in a `committer` command, even if it was seriously malformed.
    Now fast-import requires the '> ' near the end of the string and
    verifies the timestamp is formatted properly.
    Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
    63e0c8b3
t9300-fast-import.sh 6.2 KB