Hello,
Is it possible to change the date of a commit?
Thank you,
Alex
Hello,
Is it possible to change the date of a commit?
Thank you,
Alex
Re: date change of commit?
Alex K <spaceoutlet@gmail.com> writes:
> Hello, > > Is it possible to change the date of a commit?
See git-filter-branch. This won't change the date of the existing commit (which is impossible in Git), but will create another commit where only the date has been changed.
-- Matthieu Moy http://www-verimag.imag.fr/~moy/
Re: date change of commit?
Thank you. And how would you use git-filter-branch to create another branch with a different time stamp? Is it possible to commit under a different time stamp than the one provided by your default local time?
2009/10/25 Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>:
> Alex K <spaceoutlet@gmail.com> writes: > >> Hello, >> >> Is it possible to change the date of a commit? > > See git-filter-branch. This won't change the date of the existing > commit (which is impossible in Git), but will create another commit > where only the date has been changed. > > -- > Matthieu Moy > http://www-verimag.imag.fr/~moy/ > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >
Re: date change of commit?
On Tue, Oct 27, 2009 at 10:41:47AM +0100, Alex K <spaceoutlet@gmail.com> wrote:
> Thank you. And how would you use git-filter-branch to create another > branch with a different time stamp? Is it possible to commit under a > different time stamp than the one provided by your default local time?
You can set GIT_AUTHOR_DATE and GIT_COMMITTER_DATE. Both expect a format like: "1112911993 -0700" (unix timestamp + timezone info).
Re: date change of commit?
And how do you actually set those variables? Sorry to ask such a trivial question but it's been an hour that i'm going through the doc for such a simple feature. I thought those were environment variables ... but they are not seen under git var -l. Thank you.
2009/10/27 Miklos Vajna <vmiklos@frugalware.org>:
> On Tue, Oct 27, 2009 at 10:41:47AM +0100, Alex K <spaceoutlet@gmail.com> wrote: >> Thank you. And how would you use git-filter-branch to create another >> branch with a different time stamp? Is it possible to commit under a >> different time stamp than the one provided by your default local time? > > You can set GIT_AUTHOR_DATE and GIT_COMMITTER_DATE. Both expect a format > like: "1112911993 -0700" (unix timestamp + timezone info). >
Re: date change of commit?
Alex K wrote:
> And how do you actually set those variables? Sorry to ask such a > trivial question but it's been an hour that i'm going through the doc > for such a simple feature. I thought those were environment variables > ... but they are not seen under git var -l. Thank you. >
As you suspected, they are environment variables.
i.e. :
$ GIT_AUTHOR_DATE="1112911993 -0700" git commit x
Hope that helps.
Rogan
> 2009/10/27 Miklos Vajna <vmiklos@frugalware.org>: >> On Tue, Oct 27, 2009 at 10:41:47AM +0100, Alex K <spaceoutlet@gmail.com> wrote: >>> Thank you. And how would you use git-filter-branch to create another >>> branch with a different time stamp? Is it possible to commit under a >>> different time stamp than the one provided by your default local time? >> You can set GIT_AUTHOR_DATE and GIT_COMMITTER_DATE. Both expect a format >> like: "1112911993 -0700" (unix timestamp + timezone info). >>
Re: date change of commit?
Rogan Dawes wrote:
> Alex K wrote: > > And how do you actually set those variables? Sorry to ask such a > > trivial question but it's been an hour that i'm going through the doc > > for such a simple feature. I thought those were environment variables > > As you suspected, they are environment variables. > > i.e. : > > $ GIT_AUTHOR_DATE="1112911993 -0700" git commit x
Since this was in the context of git-filter-branch, I should point out that you'll have to use the variables with --env-filter and (like the manpage says) make sure you export them.
So to change the date of a single commit with SHA1 <sha1>, you could say
git filter-branch --env-filter '
if [ $GIT_COMMIT = <sha1> ]; then
export GIT_AUTHOR_DATE="1112911993 -0700"
export GIT_COMMITTER_DATE="1112911993 -0700"
fi
' <other_arguments>Alex K wrote:
> for such a simple feature
I'm not sure if you're referring to setting the variables or actually rewriting the commits here, but anyway:
The reason why the latter is so hard is that rewriting "old" history is a _huge_ hassle for people who already have the previous version of that history.
That being said, _why_? The dates are never a guarantee that something happened earlier or later precisely because they can easily be modified at commit time. So nobody should take them as more than a hint, and there's little use in faking hints.
--
Thomas Rast
trast@{inf,student}.ethz.ch