A ruby library for managing git hooks.
your_repo/.git/hooks/post-receive
require 'captain_hook' require 'tinder' hook = CaptainHook.from_path("../../") hook.handle_post_receive do room = MyCampfire.my_room room.speak "New commit: '#{message}' by #{author} to #{ref_name}" end
your_repo/.git/hooks/post-commit
require 'captain_hook' require 'mail' hook = CaptainHook.from_path(File.join(File.dirname(__FILE__), '..','..')) hook.handle_post_commit do mail = Mail.new mail.from '[email protected]' mail.to '[email protected]' mail.subject "#{message} committed by #{author} to #{ref_name}" mail.body diff mail.delivery_method(:sendmail) mail.deliver end
-
Fork the project.
-
Make your feature addition or bug fix.
-
Add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
-
Send me a pull request. Bonus points for topic branches.
Copyright © 2010 Adam Pearson. See LICENSE for details.