The Debian games team uses git for their packages, but often there is large game data, for which git is not well suited, so only the debian/ directory is version controlled with git. Other packages without large data have the full source version controlled in their debian repositories. Others version control most files, but leave out a few large files. I wanted to point out a way to resolve this inconsistency. git-annex allows large files to be version controlled with git, without actually bloating the git repository with their content and making git unhappy. Instead it is stored in a side directory of the git repository, and can be transferred around between repositories. For example, it could be used like this, to add data files: cd openarena-data git annex add --backend=SHA512E mp-pak0 pak0 git commit -m 'annexed data files' git push git annex copy --to origin (The last command won't work until git-annex is installed on alioth. I will be working to make that happen soon.) Then for others to check it out: debcheckout openarena-data cd openarena-data git annex get (Note that until version 3.20110816, this would not work unless the repo was cloned via ssh. As of today it will also work with http:// urls. But I doubt git-annex will ever be able to support getting files from repositories using git:// urls.) Then to change some data files, something like this: cd openarena-data git annex unlock pak0 mv ~/new-pak0/* pak0/ git annex add pak0 git commit -m 'updated data files to feature beautiful pink ponies' git push git annex copy --to origin And of course, someone else can then `git revert` that commit -- the data files are in proper version control.. -- see shy jo
Attachment:
signature.asc
Description: Digital signature