jgm / gitit

A wiki using HAppS, pandoc, and git
GNU General Public License v2.0
2.15k stars 226 forks source link

Support using a bare repo as wikidata #691

Open remexre opened 1 year ago

remexre commented 1 year ago

Right now, a bare Git repo will work fine for a read-only wiki, but writing will go through Data.FileStore.Git.gitSave. At best this doesn't work ("UnknownError: Could not git add 'foo' fatal: this operation must be run in a work tree "), but if a file conflicted with the name of a file in a bare repo, it would simply be overridden.

A bare repo is more convenient if some users will be git pushing to the repo rather than using the web UI, so it'd be nice to see them supported. If you have a suggested technical approach (e.g. make filestore use libgit2 instead of shelling out to Git), I might be able to put some time towards this.

jgm commented 1 year ago

I think that using gitlib would be a nice idea -- this could perhaps be developed as a separate filestore backend so it wouldn't break compatibility.