I implemented some rewrite rules to make our Gitweb have
repo.or.cz-style short URLs.

Here are examples of the short URLs:

http://orgmode.org/w/org-mode.git/blob/22eae22:/.gitmodules
http://orgmode.org/w/org-mode.git/blob/lisp/org.el
http://orgmode.org/w/org-mode.git/commit/22eae22
http://orgmode.org/w/org-mode.git/commitdiff/22eae22
http://orgmode.org/w/org-mode.git/log/22eae22
http://orgmode.org/w/org-mode.git/shortlog/22eae22
http://orgmode.org/w/org-mode.git/tree/22eae22
http://orgmode.org/w/org-mode.git/tree/22eae22:/EXPERIMENTAL
http://orgmode.org/w/org-mode.git/summary

And here are the rewrite rules:

rewrite /w/$ /w/gitweb.cgi break;
rewrite /w/(.*)\.git$ /w/gitweb.cgi?p=$1.git break;
rewrite /w/(.*)\.git/summary$ /w/gitweb.cgi?p=$1.git&a=summary break;
rewrite /w/(.*)\.git/(tree)/(.*)$ /w/gitweb.cgi?p=$1.git&a=$2 break;
rewrite /w/(.*)\.git/(blob|tree)/(.*):/(.*)$ 
/w/gitweb.cgi?p=$1.git&a=$2&hb=$3&f=$4 break;
rewrite /w/(.*)\.git/(blob)/(.*)$ /w/gitweb.cgi?p=$1.git&a=$2&f=$3 break;
rewrite /w/(.*)\.git/(commit|commitdiff|log|shortlog)/(.*)$ 
/w/gitweb.cgi?p=$1.git&a=$2&h=$3 break;

Regards,
Jason

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

Reply via email to