{"thread":{"id":"45473","subject":"git svn and SVN property svn:original-date","startedAt":"2017-03-22T23:26:56Z","lastAt":"2017-03-23T17:32:01Z","messageCount":4,"participants":["Craig McQueen","Eric Wong"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"315021","messageId":"5500469A22567C4BAF673A6E86AFA3A40295E65B42D1@IR-CENTRAL.corp.innerrange.com","threadId":"45473","inReplyTo":null,"subject":"git svn and SVN property svn:original-date","fromName":"Craig McQueen","fromEmail":"craig.mcqueen@innerrange.com","sentAt":"2017-03-22T23:26:31Z","receivedAt":"2017-03-22T23:26:56Z","isPatch":false,"sender":{"key":"craig.mcqueen@innerrange.com","avatar":null},"body":"When doing \"git svn dcommit\", the SVN revision just has the date/time stamp of the time of the dcommit.\n\nApparently 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.\n\nhttps://subversion.apache.org/docs/api/1.7/group__svn__props__revision__props.html#ga8f17351dd056149da9cb490f1daf4018\n\"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.\"\n\n-- \nCraig McQueen\n\n"},{"id":"315036","messageId":"20170323025623.GA14619@starla","threadId":"45473","inReplyTo":"5500469A22567C4BAF673A6E86AFA3A40295E65B42D1@IR-CENTRAL.corp.innerrange.com","subject":"Re: git svn and SVN property svn:original-date","fromName":"Eric Wong","fromEmail":"e@80x24.org","sentAt":"2017-03-23T02:56:23Z","receivedAt":"2017-03-23T02:57:04Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Craig McQueen <craig.mcqueen@innerrange.com> wrote:\n> When doing \"git svn dcommit\", the SVN revision just has the date/time stamp of the time of the dcommit.\n\nYeah, that's sometimes annoying to me, too.\n\n> 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.\n> \n> https://subversion.apache.org/docs/api/1.7/group__svn__props__revision__props.html#ga8f17351dd056149da9cb490f1daf4018\n\nAny idea if which versions of SVN it's supported in and how\nrecent the feature is?\n\nPerhaps we can enable it everywhere, and maybe only old clients\nwon't understand it, but won't fail; and we could start using\nit as the author date with \"git svn fetch\".\n\nOTOH, that would break the (perhaps unofficial)\nindependently-created-git-svn-mirrors-should-have-same-oids-by-default\nrule when people run different versions of git, so maybe it\ncould be an option...\n"},{"id":"315038","messageId":"5500469A22567C4BAF673A6E86AFA3A40295E65B4365@IR-CENTRAL.corp.innerrange.com","threadId":"45473","inReplyTo":"20170323025623.GA14619@starla","subject":"RE: git svn and SVN property svn:original-date","fromName":"Craig McQueen","fromEmail":"craig.mcqueen@innerrange.com","sentAt":"2017-03-23T04:18:04Z","receivedAt":"2017-03-23T04:18:18Z","isPatch":false,"sender":{"key":"craig.mcqueen@innerrange.com","avatar":null},"body":"Eric Wong wrote:\n> Craig McQueen <craig.mcqueen@innerrange.com> wrote:\n> > When doing \"git svn dcommit\", the SVN revision just has the date/time\n> stamp of the time of the dcommit.\n> \n> Yeah, that's sometimes annoying to me, too.\n> \n> > Apparently SVN revisions can have an \"svn:original-date\" property, which\n> would be good to set on dcommit, to preserve the timestamp from the git\n> repository.\n> >\n> >\n> https://subversion.apache.org/docs/api/1.7/group__svn__props__revision\n> > __props.html#ga8f17351dd056149da9cb490f1daf4018\n> \n> Any idea if which versions of SVN it's supported in and how recent the\n> feature is?\n\nI see discussion about it in 2003, so I guess it's been there right from 1.0.0.\n\n> Perhaps we can enable it everywhere, and maybe only old clients won't\n> understand it, but won't fail; and we could start using it as the author date\n> with \"git svn fetch\".\n\nUsing it for author date sounds sensible.\n\n> OTOH, that would break the (perhaps unofficial) independently-created-git-\n> svn-mirrors-should-have-same-oids-by-default\n> rule when people run different versions of git, so maybe it could be an\n> option...\n\nHmm, 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.\n\nNote, 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.\n\n-- \nCraig McQueen\n\n"},{"id":"315123","messageId":"20170323173156.GA29732@starla","threadId":"45473","inReplyTo":"5500469A22567C4BAF673A6E86AFA3A40295E65B4365@IR-CENTRAL.corp.innerrange.com","subject":"Re: git svn and SVN property svn:original-date","fromName":"Eric Wong","fromEmail":"e@80x24.org","sentAt":"2017-03-23T17:31:56Z","receivedAt":"2017-03-23T17:32:01Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Craig McQueen <craig.mcqueen@innerrange.com> wrote:\n> Eric Wong wrote:\n> > Craig McQueen <craig.mcqueen@innerrange.com> wrote:\n> > > Apparently SVN revisions can have an \"svn:original-date\" property, which\n> > would be good to set on dcommit, to preserve the timestamp from the git\n> > repository.\n> > >\n> > >\n> > https://subversion.apache.org/docs/api/1.7/group__svn__props__revision\n> > > __props.html#ga8f17351dd056149da9cb490f1daf4018\n> > \n> > Any idea if which versions of SVN it's supported in and how recent the\n> > feature is?\n> \n> I see discussion about it in 2003, so I guess it's been there right from 1.0.0.\n> \n> > Perhaps we can enable it everywhere, and maybe only old clients won't\n> > understand it, but won't fail; and we could start using it as the author date\n> > with \"git svn fetch\".\n> \n> Using it for author date sounds sensible.\n\nOK, I'd be inclined to accept a patch + tests for that;\nmy plate might be full with non-git stuff until April.\n\n> > OTOH, that would break the (perhaps unofficial) independently-created-git-\n> > svn-mirrors-should-have-same-oids-by-default\n> > rule when people run different versions of git, so maybe it could be an\n> > option...\n> \n> Hmm, good question. Maybe it should be an option, though I\n> hope it would be enabled by default (since the feature would\n> be more metadata-preserving, which is a good thing), with an\n> option to disable it to allow backwards compatibility with\n> people running an older version of git. That's my opinion\n> anyway, and I realise my opinion is not necessarily\n> well-informed regarding all considerations.\n\nGiven git-svn behavior hasn't changed much in over a decade, I'd\nrather be conservative with regards to changing any existing\nbehavior.  We could offer one warning about it to inform users\nabout it if original-date is seen, however.\n\n> Note, I'm unclear as to whether Subversion is willing to store\n> timezone information in svn:original-date. But I guess having\n> git author date correspond to svn:original-date is an\n> improvement for preserving more metadata, even if the timezone\n> is lost in the process.\n\nCan you find any examples of it in the wild?  I prefer having\nreal-world examples to look at.  Thanks.\n"}]}