A script to generate Atom feeds for git commit logs.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

README.pod 2.1KB


=head1 NAME

git-feed - generate an Atom feed of git commits in the current repository


git-feed [ B<--project_url=...> ]


I keep a lot of projects in git, and I like to provide feeds for things I'm
working on. This script wraps git and XML::Atom::SimpleFeed to generate a
basic Atom feed of commits. It tries to use information already available in
the environment, but needs to be given a URL for your project (and probably for
the feed itself).

It can be configured for a given repository by doing something like the

git config feed.projecturl https://p1k3.com/userland-book/
git config feed.url https://p1k3.com/userland-book/feed.xml
echo 'userland: a book about the command line for human beings' > .git/description

I have I<no idea> whether this sort of thing is considered an acceptable use of
git configuration, but it seems to work.

...or you can supply various options on the command line.



Set a URL for the project.




Set an explicit URL for the feed itself.




Set an explicit title for the feed. Will otherwise be read from
.git/description, if available.




Explicitly request I<n> entries. Defaults to 10.




Explicitly set an author string. Defaults to git config's current idea of



git feed --project_url=https://p1k3.com/userland-book/ > feed.xml


I'll wrap this in a module and add a build script. For now, install
XML::Atom::SimpleFeed first. I would probably do that either with:

cpanp -i XML::Atom::SimpleFeed


apt-get install libxml-atom-simplefeed-perl

...depending on which one gave me less static on a given system. I don't
really know what I'm doing in the Perl ecosystem any more, though.

=head1 AUTHOR

Brennen Bearnes <bbearnes@gmail.com>

=head1 LICENSE

This utility is free software, licensed under the terms of the GPL, v2.
See COPYING for a complete copy of the license.