Merge branch 'master' of ssh://git.ikiwiki.info

master
Joey Hess 2012-01-23 18:16:26 -04:00
commit 0376a8da8a
5 changed files with 53 additions and 15 deletions

View File

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="jerojasro"
nickname="jerojasro"
subject="RE: comment 1"
date="2012-01-21T21:44:00"
content="""
[[Michal]], that's not a bad idea IMO, but we would lose some [[searching
keywords|ikiwiki/searching]] and would also index structural elements
(navigation text, and so on)
"""]]

View File

@ -1110,9 +1110,7 @@ to version control; the subdir can be added if so.
Remove a file. The filename is relative to the root of the srcdir.
Note that this should not commit the removal, it should only prepare for it
to be committed when `rcs_commit` (or `rcs_commit_staged`) is called. Note
that the new file may be in a new subdir that is not yet in version
control; the subdir can be added if so.
to be committed when `rcs_commit` (or `rcs_commit_staged`) is called.
#### `rcs_rename($$)`

View File

@ -1,13 +1,17 @@
If you really need to, you can use [[!wikipedia desc="CVS" Concurrent Versions System]]
with ikiwiki.
[[!template id=gitbranch branch=schmonz/cvs author="[[schmonz]]"]]
If you really need to, you can use [[!wikipedia desc="CVS" Concurrent
Versions System]] with ikiwiki.
### Usage
7. Install [[!cpan File::chdir]], [[!cpan File::ReadBackwards]],
[cvsps](http://www.cobite.com/cvsps/), and
[cvsweb](http://www.freebsd.org/projects/cvsweb.html) or the like.
[cvsps](http://www.cobite.com/cvsps/), and
[cvsweb](http://www.freebsd.org/projects/cvsweb.html) or the like.
7. Adjust CVS-related parameters in your setup file.
Consider creating `$HOME/.cvsrc` if you don't have one already; the plugin doesn't need it, but you yourself might. Here's a good general-purpose one:
Consider creating `$HOME/.cvsrc` if you don't have one already; the
plugin doesn't need it, but you yourself might. Here's a good
general-purpose one:
cvs -q
checkout -P
@ -17,12 +21,25 @@ Consider creating `$HOME/.cvsrc` if you don't have one already; the plugin doesn
### Implementation details
* [[ikiwiki-makerepo]]:
* creates a repository,
* imports `$SRCDIR` into top-level module `ikiwiki` (vendor tag IKIWIKI, release tag PRE_CVS),
* configures the post-commit hook in `CVSROOT/loginfo`.
* creates a repository,
* imports `$SRCDIR` into top-level module `ikiwiki` (vendor tag
IKIWIKI, release tag PRE_CVS),
* configures the post-commit hook in `CVSROOT/loginfo`.
### To do
* Have `ikiwiki-makerepo` set up NetBSD-like `log_accum` and `commit_prep` scripts that coalesce commits into changesets. Reasons:
7. Obviates the need to scrape the repo's complete history to determine the last N changesets. (Repositories without such records can fall back on the `cvsps` and `File::ReadBackwards` code.)
7. Arranges for ikiwiki to be run once per changeset, rather than CVS's once per committed file (!), which is a waste at best and bug-inducing at worst. (Currently, on multi-directory commits, only the first directory's changes get mentioned in [[recentchanges|plugins/recentchanges]].)
* Perhaps prevent web edits from attempting to create `.../CVS/foo.mdwn` (and `.../cvs/foo.mdwn` on case-insensitive filesystems); thanks to the CVS metadata directory, the attempt will fail anyway (and much more confusingly) if we don't.
* Expand test coverage and fix bugs.
* Have `ikiwiki-makerepo` set up NetBSD-like `log_accum` and
`commit_prep` scripts that coalesce commits into changesets. Reasons:
7. Obviates the need to scrape the repo's complete history to
determine the last N changesets. (Repositories without such
records can fall back on the `cvsps` and `File::ReadBackwards`
code.)
7. Arranges for ikiwiki to be run once per changeset, rather
than CVS's once per committed file (!), which is a waste at
best and bug-inducing at worst. (Currently, on multi-directory
commits, only the first directory's changes get mentioned
in [[recentchanges|plugins/recentchanges]].)
* Perhaps prevent web edits from attempting to create `.../CVS/foo.mdwn`
(and `.../cvs/foo.mdwn` on case-insensitive filesystems); thanks
to the CVS metadata directory, the attempt will fail anyway (and
much more confusingly) if we don't.

View File

@ -147,3 +147,15 @@ short and clear as possible. --[[schmonz]]
> that. --[[Joey]]
>> Done. --[[schmonz]].
----
I'm attempting to bring some polish to this plugin, starting with
fuller test coverage. In preparation, I've refactored the tests a
bunch (and shuffled the code a bit) in my branch. I'm worried,
however, that my misunderstanding of `git rebase` may have made my
branch harder for you to pull.
Before I go writing a whole swack of test cases, could you merge
my latest? Through at least ad0e56cdcaaf76bc68d1b5c56e6845307b51c44a
there should be no functional change. --[[schmonz]]

View File

@ -0,0 +1 @@
Test it just now!