File issue.
authortschwinge <tschwinge@web>
Tue, 8 Jun 2010 09:21:43 +0000 (09:21 +0000)
committerJoey Hess <joey@finch.kitenet.net>
Tue, 8 Jun 2010 09:21:43 +0000 (09:21 +0000)
doc/bugs/Git:_changed_behavior_w.r.t._timestamps.mdwn [new file with mode: 0644]

diff --git a/doc/bugs/Git:_changed_behavior_w.r.t._timestamps.mdwn b/doc/bugs/Git:_changed_behavior_w.r.t._timestamps.mdwn
new file mode 100644 (file)
index 0000000..5d5b9fc
--- /dev/null
@@ -0,0 +1,180 @@
+After some months, I just updated my local ikiwiki sources, and rebuilt
+the Hurd web pages, <http://git.savannah.gnu.org/cgit/hurd/web.git/>.
+
+I was confused, having switched to the new automatic (thanks!) --gettime
+mechanism, why on some pages the timestamps had changed compared to my
+previous use of --getctime and setting files' mtimes (using a script)
+according to the last Git commit.  For example:
+
+community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.html
+
+old:
+
+    Last edited <span class="date">2008-09-11 18:11:53 UTC</span>
+    <!-- Created <span class="date">2008-09-11 17:47:08 UTC</span> -->
+
+new:
+
+    Last edited <span class="date">2008-09-11 18:12:22 UTC</span>
+    <!-- Created <span class="date">2008-09-11 17:47:50 UTC</span> -->
+
+
+I had a look at what git.pm is doing, and began to manually replay /
+investigate:
+
+    $ git log --pretty=fuller --name-only --relative -- community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    commit 8f1b97bfe45b2f173e3a7d55dee226a9e289a695
+    Author:     arnebab <arne_bab@web.de>
+    AuthorDate: Thu Sep 11 20:11:53 2008 +0200
+    Commit:     arnebab <arne_bab@web.de>
+    CommitDate: Thu Sep 11 20:11:53 2008 +0200
+    
+        Added a link to the X.org guide in this wiki.
+    
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    commit 3ef8b7d80d80572c436c4c60c71879bc74409816
+    Author:     arnebab <arne_bab@web.de>
+    AuthorDate: Thu Sep 11 19:47:08 2008 +0200
+    Commit:     arnebab <arne_bab@web.de>
+    CommitDate: Thu Sep 11 19:47:08 2008 +0200
+    
+        Minor update on the enty trying to get X working -> 'watch this place for updates'
+    
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+
+OK, these are my old dates.
+
+    $ git log --pretty=format:%ci --name-only --relative -- community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn 
+    2008-09-11 20:11:53 +0200
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    2008-09-11 19:47:08 +0200
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    $ git log --pretty=format:%ct --name-only --relative -- community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn 
+    1221156713
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    1221155228
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    $ date -d @1221156713
+    Thu Sep 11 18:11:53 UTC 2008
+    $ date -d @1221155228
+    Thu Sep 11 17:47:08 UTC 2008
+
+That's all consistent.
+
+
+But:
+
+    $ perl -le 'use Storable; my $index=Storable::retrieve("indexdb"); use Data::Dumper; print Dumper $index'
+    [...]
+                          'community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn' => {
+                                                                                        'ctime' => '1221155270',
+                                                                                        'dest' => [
+                                                                                                    'community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.html'
+                                                                                                  ],
+                                                                                        'typedlinks' => {
+                                                                                                          'tag' => {}
+                                                                                                        },
+                                                                                        'mtime' => 1221156742,
+                                                                                        'depends_simple' => {
+                                                                                                              'sidebar' => 1
+                                                                                                            },
+                                                                                        'links' => [
+                                                                                                     'community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x/discussion',
+                                                                                                     'Hurd/DebianXorg'
+                                                                                                   ],
+                                                                                        'state' => {
+    [...]
+
+    $ date -d @1221156742
+    Thu Sep 11 18:12:22 UTC 2008
+    $ date -d @1221155270
+    Thu Sep 11 17:47:50 UTC 2008
+
+That's different, and it matches what the new ikiwiki writes into the
+HTML file.
+
+
+Back to Git again, this time without specifying the file:
+
+    $ git log --pretty=format:%ct --name-only --relative
+    [...]
+    1221255713
+    1221255655
+    unsorted/PortingIssues.mdwn
+    
+    1221156742 [Thu Sep 11 18:12:22 UTC 2008]
+    1221156713 [Thu Sep 11 18:11:53 UTC 2008]
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    1221156267
+    1221156235
+    index.mdwn
+    
+    1221156122
+    1221156091
+    index.mdwn
+    
+    1221155942
+    1221155910
+    index.mdwn
+    
+    1221155270 [Thu Sep 11 17:47:50 UTC 2008]
+    1221155228 [Thu Sep 11 17:47:08 UTC 2008]
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    
+    1221154986
+    community/gsoc.mdwn
+    community/gsoc/project_ideas.mdwn
+    
+    1221147244
+    whatsnew.html
+    [...]
+
+Aha!
+
+... and some more detail:
+
+    $ git log --pretty=fuller --name-only --relative
+    [...]
+    commit e4e89e1683012c879012522105a3471a00714613
+    Author:     Samuel Thibault <samuel.thibault@ens-lyon.org>
+    AuthorDate: Fri Sep 12 23:40:55 2008 +0200
+    Commit:     Samuel Thibault <samuel.thibault@ens-lyon.org>
+    CommitDate: Fri Sep 12 23:40:55 2008 +0200
+    
+        MSG_NOSIGNAL and IPV6_PKTINFO got fixed
+    
+    unsorted/PortingIssues.mdwn
+    
+    commit c389fae98dff86527be62f895ff7272e4ab1932c
+    Merge: 0339e3e 8f1b97b
+    Author:     GNU Hurd wiki engine <web-hurd@gnu.org>
+    AuthorDate: Thu Sep 11 18:12:22 2008 +0000
+    Commit:     GNU Hurd wiki engine <web-hurd@gnu.org>
+    CommitDate: Thu Sep 11 18:12:22 2008 +0000
+    
+        Merge branch 'master' of wiki@192.168.10.50:wiki
+    
+    commit 8f1b97bfe45b2f173e3a7d55dee226a9e289a695
+    Author:     arnebab <arne_bab@web.de>
+    AuthorDate: Thu Sep 11 20:11:53 2008 +0200
+    Commit:     arnebab <arne_bab@web.de>
+    CommitDate: Thu Sep 11 20:11:53 2008 +0200
+    
+        Added a link to the X.org guide in this wiki.
+    
+    community/weblogs/ArneBab/2008-08-02-gnu_hurd_and_x.mdwn
+    [...]
+
+So, merges are involved there.
+
+What (the new) ikiwiki code does, is use the timestamp when the merge was
+done instead of the timestamp when the commit was done.  Is this
+intentional?  Otherwise I could supply a patch.
+
+--[[tschwinge]]