Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
authorJoey Hess <joey@gnu.kitenet.net>
Fri, 21 Aug 2009 19:58:56 +0000 (15:58 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Fri, 21 Aug 2009 19:58:56 +0000 (15:58 -0400)
doc/bugs/po_plugin_cannot_add_po_files_into_git.mdwn
doc/plugins/contrib/cvs/discussion.mdwn

index 6fadff07ea096799ca2bcd09064cd17650f13acf..8e339961134e31346937b8048fe4598f748811af 100644 (file)
@@ -12,3 +12,23 @@ I have an other issue with the po plugin when I set the srcdir to './doc/' (prov
 > version I have here. But, the po plugin is definitly doing the wrong
 > thing; it's telling git to add the po file with the full scrdir path
 > rather than relative to its root. Fixed that. [[done]] --[[Joey]] 
+
+>> Yeah, I figured for the relative path
+>> Git version 1.6.3.3 (on both my dev and server machines)
+>>
+>> Here is an example of what I get when I update the po file on my laptop and I push to the master repository:
+
+     From /srv/git/sb
+       5eb4619..ecac4d7  master     -> origin/master
+    scanning doc.fr.po
+    building doc.fr.po
+    building doc.mdwn, which depends on doc.fr
+    building recentchanges.mdwn, which depends on recentchanges/change_ecac4d7311b15a3a3ed03102b9250487315740bc
+    fatal: '/srv/www/sb.l.n/new/doc/doc.fr.po' is outside repository
+    'git add /srv/www/sb.l.n/new/doc/doc.fr.po' failed:  at /usr/share/perl5/IkiWiki/Plugin/git.pm line 161.
+    done
+    To ssh://git.lohrun.net/var/cache/git/songbook.git
+       5eb4619..ecac4d7  master -> master
+  
+>> The root repository used to run ikiwiki is `/srv/www/sb.l.n/new/` 
+>> -- [[AlexandreDupas]]
index e2411af6308f6f887430eb713775800f56d1436e..847d0f92a77e8c450569bd2f88dfa9eaf36d6488 100644 (file)
@@ -3,3 +3,33 @@ post-commit wrapper wrapper that ikiwiki-makerepo is patched to set up.
 That just seems unnecessarily complicated. Why can't ikiwiki itself detect
 the "cvs add <directory>" call and avoid doing anything in that case?
 --[[Joey]] 
+
+> The wrapper wrapper does three things:
+>
+> 7. It ignores `cvs add <directory>`, since this is a weird CVS
+> behavior that ikiwiki gets confused by and doesn't need to act on.
+> 7. It prevents `cvs` locking against itself: `cvs commit` takes a
+> write lock and runs the post-commit hook, which runs `cvs update`,
+> which wants a read lock and sleeps forever -- unless the post-commit
+> hook runs in the background so the commit can "finish".
+> 7. It fails silently if the ikiwiki post-commit hook is missing.
+> CVS doesn't have any magic post-commit filenames, so hooks have to
+> be configured explicitly. I don't think a commit will actually fail
+> if a configured post-commit hook is missing (though I can't test
+> this at the moment).
+>
+> Thing 1 can probably be handled within ikiwiki, if that seems less
+> gross to you.
+>
+> Thing 2 I'm less sure of. (I'd like to see the web UI return
+> immediately on save anyway, to a temporary "rebuilding, please wait
+> if you feel like knowing when it's done" page, but this problem
+> with CVS happens with any kind of commit, and could conceivably
+> happen with some other VCS.)
+>
+> Thing 3 I think I did in order to squelch the error messages that
+> were bollixing up the CGI. It was easy to do this in the wrapper
+> wrapper, but if that's going away, it can be done just as easily
+> with output redirection in `CVSROOT/loginfo`.
+>
+> --[[schmonz]]