summaryrefslogtreecommitdiffabout
AgeCommit message (Collapse)AuthorFilesLines
2008-10-05ui-shared: generate proper links in cgit_object_link()Lars Hjemli1-15/+7
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared: use html_url_path() to get properly escaped url in form actionLars Hjemli1-2/+2
When a repo uses an url with e.g. '#' or '?' characters this needs to be properly escaped when used as action in a form tag. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05Use GIT-1.6.0.2Lars Hjemli3-5/+3
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared: reword the standard page footerLars Hjemli1-2/+2
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared: do not print repo name on the "summary" tabLars Hjemli1-2/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05Replace cgitrc with cgitrc.5.txtLars Hjemli2-202/+367
The new file describes all cgitrc options in a more structured manner then the cgitrc example file and it might also work as the source for a cgitrc man page. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05Merge branch 'lh/escape-urls'Lars Hjemli5-14/+32
* lh/escape-urls: ui-repolist + ui-shared: Use cgit_summary_link() ui-shared.c: add cgit_summary_link() ui-shared.c: use html_url_path() in repolink() html.c: add html_url_path
2008-10-05ui-repolist + ui-shared: Use cgit_summary_link()Lars Hjemli2-10/+5
This makes is possible to use cgit with repository urls containing special url characters like '#' and '?'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared.c: add cgit_summary_link()Lars Hjemli2-0/+6
This function can be used to generate a link to the summary page for the currently active repo. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared.c: use html_url_path() in repolink()Lars Hjemli1-4/+4
This makes sure that reponames and paths are properly escaped when used as urls. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05html.c: add html_url_pathLars Hjemli2-0/+17
This function can be used to generate properly escaped path-components for links. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05Merge branch 'lh/escape-urls'Lars Hjemli6-11/+53
* lh/escape-urls: ui-shared.c: use html_url_arg() html.c: add html_url_arg
2008-10-05ui-snapshot.c: specify archiver_args.baselenLars Hjemli2-2/+11
The struct member was introduces in git commit d53fe8187c38, but the cgit testsuite failed to detect that cgit always generated archives without prefixes, i.e. the result from cgit_repobasename was ignored. This fixes the bug and the testsuite. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05ui-shared.c: use html_url_arg()Lars Hjemli4-11/+36
The link-generating functions are updated to use the new html_url_arg function, thereby fixing links to strange repos, branches and files. Also, the test-suite is updated to verify some cases of strange urls. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-10-05html.c: add html_url_argLars Hjemli2-0/+17
This function can be used to properly escape querystring parameter values. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-23ui-diff: make diffstat header a link to the full diffLars Hjemli1-1/+4
When printing a path-filtered diff it wasn't obvious how to get back to the full diff (clicking the 'diff' tab would do this). Making the diffstat heading into a link seems to improve the usability. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-23ui-diff: fix links from diffstatLars Hjemli1-4/+2
The links in the diffstat is supposed to work as a filter for the diff, but this only worked when a single rev was supplied, i.e. the filtered diff was always against the parent of the specified rev. With this patch it is now possible to use the diffstat as a 'filter menu' for urls like http://hjemli.net/git/cgit/diff/?id=v0.7.2&id2=v0.7.1 Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-20Add LDFLAGS to makefile.Harley Laue1-1/+1
This will allow for creating static builds which is useful for chrooted environments. Signed-off-by: Harley Laue <losinggeneration@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15ui-repolist: enable filtering of repos by pathLars Hjemli1-1/+10
If a repo url is specified but no exact match is found in the list of repos the url will now be used as a prefix-filter. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15Add support for --scan-tree=<path> option to cgitLars Hjemli4-3/+184
This option makes cgit scan a directory tree looking for git repositories, generating suitable definitions for a cgitrc file on stdout. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15Teach cgit how to use PATH_INFOLars Hjemli2-0/+28
This commit makes cgit use the cgi variables SCRIPT_NAME and PATH_INFO when virtual-root is unspecified in cgitrc and no url-parameter is specified on the querystring. This has two nice effects: * Virtual urls works out of the box, no more need for rewrite-rules in httpd. * Virtual urls with special querystring characters are handled correctly. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15Merge branch 'lh/parsing'Lars Hjemli3-64/+101
* lh/parsing: ui-tag: show the taggers email parsing.c: be prepared for unexpected content in commit/tag objects
2008-09-15ui-tag: show the taggers emailLars Hjemli1-0/+4
If it's specified there's no point in hiding it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15parsing.c: be prepared for unexpected content in commit/tag objectsLars Hjemli2-64/+97
When parsing commits and tags cgit made too many assumptions about the formatting of said objects. This patch tries to make the code be more prepared to handle 'malformed' objects. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-15Merge branch 'ew/http_host'Lars Hjemli1-7/+12
* ew/http_host: use Host: header to generate cgit_hosturl
2008-09-02Update Makefile to use GIT-1.6.0.1Lars Hjemli1-1/+1
When updating the git submodule to 1.6.0.1 (and 1.6.0), the Makefile was left behind. This fixes it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-01use Host: header to generate cgit_hosturlEric Wong1-7/+12
I run an instance of lighttpd for cgit behind nginx (nginx doesn't execute CGI). So the port (SERVER_PORT=33333) that lighttpd runs on sends to cgit is different from the standard port 80 that public clients connect to (via nginx). This was causing the Atom feed URL to show the private port number that lighttpd was running on. Since the HTTP/1.1 "Host" header includes the port number if running on a non-standard port, it allows non-client-facing HTTP servers to transparently generate public URLs that clients can see. So use the "Host" header if it is available and fall back to SERVER_NAME/SERVER_PORT for some clients that don't set HTTP_HOST. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2008-09-01Use GIT-1.6.0.1Lars Hjemli1-0/+0
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-01ui-plain: handle subdirectoriesLars Hjemli1-4/+1
The callback from read_tree_recursive just needs to check the type of each tree entry; if it's a dir we want to continue scanning, if it's a regular file we'll assume it's the one we requested. And while at it, remove some stray fprintfs. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-09-01Use GIT-1.6.0Lars Hjemli1-0/+0
2008-09-01Merge branch 'lh/plain'Lars Hjemli12-13/+125
* lh/plain: Supply status description to html_status() ui-tree: link to plain view instead of blob view Implement plain view
2008-09-01Merge branch 'lh/clone'Lars Hjemli6-0/+140
* lh/clone: Add support for cloning over http Conflicts: cmd.c
2008-09-01cache.c: use %zd for off_t argumentLars Hjemli1-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail>
2008-08-06Supply status description to html_status()Lars Hjemli4-14/+12
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06Use GIT-1.6.0.rc1Lars Hjemli2-1/+1
Now that rc1 is released as a tarball `make get-git` should start working again. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06Makefile: Git dependency, take 3Lars Hjemli1-5/+3
In commit a1266edfe the build instructions for the git libs where moved to their real targets, which in turn depended on the phony target `git`. But since `git` is an actual directory in cgit the git libs wouldn't be recompiled when needed. So with this patch (third time lucky), cgit is declared to depend on the really phony target `libgit` and the build instructions for `libgit` is to unconditionally rebuild git/libgit.a and git/xdiff/lib.a. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06ui-tree: link to plain view instead of blob viewLars Hjemli3-4/+12
The urls for plain view makes it possible to download blobs without knowing their SHA1, but the function needs to be promoted and the link from tree view seems like a perfect fit. PS: Although hidden, the blob view still is nice for direct blob access so there's no point in removing it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06Implement plain viewLars Hjemli9-0/+106
This implements a way to access plain blobs by path (similar to the tree view) instead of by sha1. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06Add support for cloning over httpLars Hjemli6-0/+140
This patch implements basic support for cloning over http, based on the work on git-http-backend by Shawn O. Pearce. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-06Merge branch 'lh/atom'Lars Hjemli7-0/+168
2008-08-05cgitrc: explain new local-time optionStefan Naewe1-0/+2
Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-01Add atom-supportLars Hjemli7-0/+168
This enables a page which generates atom feeds for the current branch and path, heavily inspired by the atom-support in gitweb. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-01Added `local-time` option to cgitrcStefan Naewe7-10/+17
When `local-time` is set, commit, tag and patch timestamps will be printed in the servers timezone. Also, regardless of the value of `local-time`, these timestamps will now always show the timezone. Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-08-01Makefile: another take on git dependency rulesLars Hjemli1-7/+5
When building cgit we depend on xdiff/lib.a and libgit.a in the git directory, but the previous attempt on describing this dependency failed since the build instructions for the libs was placed under the phony `git` target. This patch fixes the issue by moving the build instructions to their real targets. It also makes it clear that only the `cgit` target depends on the git binaries (since they're only used during linking). And while at it, the patch also cleans up the list of phony targets. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-27Modify default value for a few cgitrc optionsLars Hjemli1-2/+5
The default max-length used when printing commit messages and repo descriptions can be increased due to the new layout (no sidebar). Also, on the repo summary page I believe it makes sense to only show the ten most recent branches and tags by default, just as it makes sense to show the ten most recent commit messages for the active branch. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-27Be prepared for empty repositoriesLars Hjemli2-4/+9
Before this patch, cgit would segfault on repositories with no refs. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-27ui-shared: show repo owner along with descriptionLars Hjemli1-3/+3
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-27ui-summary: show clone urlsLars Hjemli1-0/+41
If either repo.clone-url or clone-prefix is specified in cgitrc, all space-separated values in the config option is printed as a possible clone url on the repo summary page. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-22Makefile: remove the `distclean` and `emptycache` targetsLars Hjemli1-7/+0
The `distclean` was hardly useful while the `emptycache` was actively harmful. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-07-22Makefile: do not touch the git objects with `make clean`Lars Hjemli1-1/+0
I've been avoiding `make clean` for a long time due to its eagerness to kill all the git objectfiles. Signed-off-by: Lars Hjemli <hjemli@gmail.com>