When doing "git svn dcommit", the SVN revision just has the date/time stamp of the time of the dcommit.
Apparently SVN revisions can have an "svn:original-date" property, which would be good to set on dcommit, to preserve the timestamp from the git repository.
https://subversion.apache.org/docs/api/1.7/group__svn__props__revision__props.html#ga8f17351dd056149da9cb490f1daf4018
"The svn:date property must be monotonically increasing, along with the revision number. In certain scenarios, this may pose a problem when the revision represents a commit that occurred at a time which does not fit within the sequencing required for svn:date. This can happen, for instance, when the revision represents a commit to a foreign version control system, or possibly when two Subversion repositories are combined. This property [svn:original-date] can be used to record the TRUE, original date of the commit."
--
Craig McQueen
Craig McQueen [off-list ref] wrote:
When doing "git svn dcommit", the SVN revision just has the date/time stamp of the time of the dcommit.
Yeah, that's sometimes annoying to me, too.
Apparently SVN revisions can have an "svn:original-date" property, which would be good to set on dcommit, to preserve the timestamp from the git repository.
https://subversion.apache.org/docs/api/1.7/group__svn__props__revision__props.html#ga8f17351dd056149da9cb490f1daf4018
Any idea if which versions of SVN it's supported in and how
recent the feature is?
Perhaps we can enable it everywhere, and maybe only old clients
won't understand it, but won't fail; and we could start using
it as the author date with "git svn fetch".
OTOH, that would break the (perhaps unofficial)
independently-created-git-svn-mirrors-should-have-same-oids-by-default
rule when people run different versions of git, so maybe it
could be an option...
Eric Wong wrote:
Craig McQueen [off-list ref] wrote:
quoted
When doing "git svn dcommit", the SVN revision just has the date/time
stamp of the time of the dcommit.
Yeah, that's sometimes annoying to me, too.
quoted
Apparently SVN revisions can have an "svn:original-date" property, which
would be good to set on dcommit, to preserve the timestamp from the git
repository.
quoted
https://subversion.apache.org/docs/api/1.7/group__svn__props__revision
quoted
__props.html#ga8f17351dd056149da9cb490f1daf4018
Any idea if which versions of SVN it's supported in and how recent the
feature is?
I see discussion about it in 2003, so I guess it's been there right from 1.0.0.
Perhaps we can enable it everywhere, and maybe only old clients won't
understand it, but won't fail; and we could start using it as the author date
with "git svn fetch".
Using it for author date sounds sensible.
OTOH, that would break the (perhaps unofficial) independently-created-git-
svn-mirrors-should-have-same-oids-by-default
rule when people run different versions of git, so maybe it could be an
option...
Hmm, good question. Maybe it should be an option, though I hope it would be enabled by default (since the feature would be more metadata-preserving, which is a good thing), with an option to disable it to allow backwards compatibility with people running an older version of git. That's my opinion anyway, and I realise my opinion is not necessarily well-informed regarding all considerations.
Note, I'm unclear as to whether Subversion is willing to store timezone information in svn:original-date. But I guess having git author date correspond to svn:original-date is an improvement for preserving more metadata, even if the timezone is lost in the process.
--
Craig McQueen
Craig McQueen [off-list ref] wrote:
Eric Wong wrote:
quoted
Craig McQueen [off-list ref] wrote:
quoted
Apparently SVN revisions can have an "svn:original-date" property, which
would be good to set on dcommit, to preserve the timestamp from the git
repository.
quoted
https://subversion.apache.org/docs/api/1.7/group__svn__props__revision
quoted
__props.html#ga8f17351dd056149da9cb490f1daf4018
Any idea if which versions of SVN it's supported in and how recent the
feature is?
I see discussion about it in 2003, so I guess it's been there right from 1.0.0.
quoted
Perhaps we can enable it everywhere, and maybe only old clients won't
understand it, but won't fail; and we could start using it as the author date
with "git svn fetch".
Using it for author date sounds sensible.
OK, I'd be inclined to accept a patch + tests for that;
my plate might be full with non-git stuff until April.
quoted
OTOH, that would break the (perhaps unofficial) independently-created-git-
svn-mirrors-should-have-same-oids-by-default
rule when people run different versions of git, so maybe it could be an
option...
Hmm, good question. Maybe it should be an option, though I
hope it would be enabled by default (since the feature would
be more metadata-preserving, which is a good thing), with an
option to disable it to allow backwards compatibility with
people running an older version of git. That's my opinion
anyway, and I realise my opinion is not necessarily
well-informed regarding all considerations.
Given git-svn behavior hasn't changed much in over a decade, I'd
rather be conservative with regards to changing any existing
behavior. We could offer one warning about it to inform users
about it if original-date is seen, however.
Note, I'm unclear as to whether Subversion is willing to store
timezone information in svn:original-date. But I guess having
git author date correspond to svn:original-date is an
improvement for preserving more metadata, even if the timezone
is lost in the process.
Can you find any examples of it in the wild? I prefer having
real-world examples to look at. Thanks.