Commit Graph

1101 Commits

Author SHA1 Message Date
Lars Hjemli
620bb3e5e4 Add plain patch view
The new view mimics the output from `git format-patch`, making it possible
to cherry-pick directly from cgit with something like `curl $url | git am`.

Inspired by a patch to `git-apply` by Mike Hommey:
  http://thread.gmane.org/gmane.comp.version-control.git/67611/focus=67610

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-11 02:43:24 +01:00
Lars Hjemli
afcdd083da Add support for automatic and custom clone urls
This adds support for two new parameters to cgitrc: clone-prefix and
repo.clone-url.

If clone-prefix is specified, all repos will get a clone url printed in the
sidebar; the url is generated by clone-prefix + repo.url.

Additionally, each repo can specify repo.clone-url which will override any
such auto-generated url.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-03 01:49:38 +01:00
Lars Hjemli
2216fd6472 Compare string lengths when parsing the snapshot mask
We used to rely on the result from strncmp() without comparing the length of
the strings involved. Even worse, any single-character format specifier would
enable zip-format due to the optional '.'-prefix since the length of the
mask then would become zero.

Noticed-by: Evan Martin <sys@neugierig.org>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-03 00:39:20 +01:00
Evan Martin
7b346647c9 Default repo description to "[no description]"
Otherwise, when you leave out a description for a repository, the NULL
default causes cgit to print out titles like "cgit - (null)".

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-03 00:21:44 +01:00
Lars Hjemli
dabb34af76 Merge branch 'stable'
* stable:
  Handle missing timestamp in commit/tag objects
  Set commit date on snapshot contents
2007-12-02 22:28:37 +01:00
Lars Hjemli
fc4c4ba3a9 Handle missing timestamp in commit/tag objects
When a commit or tag lacks author/committer/tagger timestamp, do not skip
the next line in the commit/tag object.

Also, do not bother to print timestamps with value 0 as it is close to certain
to be bogus.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-02 22:27:07 +01:00
Lars Hjemli
e8e6721817 Add cell-spacing in html
There are some browsers which don't support the border-spacing property

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-16 10:28:29 +01:00
Lars Hjemli
6ef637e090 Use tables for page layout
It feels like the Right Thing, and it fixes some rendering problems in a
much used webbrowser.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-16 09:52:03 +01:00
Lars Hjemli
fd90d2826a Gimp my logo
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-16 09:51:35 +01:00
Lars Hjemli
d267d88c9c Add support for "robots" meta-tag
With this change, cgit will start to generate the "robots" meta-tag, using
a default value of "index, nofollow".

The default value can be modified with a new cgitrc variable, "robots".

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 21:57:21 +01:00
Lars Hjemli
1b7c5b2e0b Generate valid html for "downloads" menu header
Noticed-by: http://validator.w3.org
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 13:44:39 +01:00
Lars Hjemli
a7cf406c80 Merge branch 'lh/testsuite'
* lh/testsuite:
  Set commit date on snapshot contents
  Fix html error detected by test-suite
  Create initial testsuite
2007-11-11 13:17:13 +01:00
Lars Hjemli
5b75064a81 Set commit date on snapshot contents
The testsuite revealed that cgit snapshots don't set any useful timestamp on
the files contained in the snapshot.

Cherry-picked-from: 2ff33a8a04
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 13:16:43 +01:00
Lars Hjemli
2ff33a8a04 Set commit date on snapshot contents
The testsuite revealed that cgit snapshots don't set any useful timestamp on
the files contained in the snapshot.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 13:14:15 +01:00
Lars Hjemli
2915483ef6 Fix html error detected by test-suite
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 13:04:28 +01:00
Lars Hjemli
b4649fc905 Create initial testsuite
This creates a simple testsuite, heavily inspired by the testsuite in git.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11 12:00:13 +01:00
Lars Hjemli
ab21082c21 Merge branch 'stable'
* stable:
  CGIT 0.7.1
  Makefile install: include cgit.png, do not empty cache

Conflicts:

	Makefile
2007-11-09 13:52:48 +01:00
Lars Hjemli
2919b91d20 CGIT 0.7.1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-09 13:51:00 +01:00
Lars Hjemli
9b18632b7e Makefile install: include cgit.png, do not empty cache
The cache-cleaning is potentially dangerous, so lets move it away from the
install target. A special emptycache target can be used to run the rm -rf.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-09 13:47:58 +01:00
Lars Hjemli
86d6dfa9b7 Minor css tweaks
Don't specify border and background color for input controls, reduce font-
size of heading in sidebar.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-09 13:19:56 +01:00
Lars Hjemli
6e54bd009c Merge branch 'stable'
* stable:
  Support "/" as virtual-root
2007-11-08 12:22:39 +01:00
Lars Hjemli
c188c482b3 Support "/" as virtual-root
When the virtual-root was a single "/", it would be normalized to NULL due
to removal of trailing slashes, which in turn would fool us to belive that
we shouldn't generate virtual urls.

This makes the "/" normalize to "", effectively allowing virtual urls like
http://example.com/projectname to be generated without specifying the
full domain name as the virtual root.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-08 12:21:59 +01:00
Lars Hjemli
1ae41a0d1e Makefile: link with libiconv if NEEDS_LIBICONV is defined
This seems to be needed to compile on cygwin.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-06 09:38:46 +01:00
Lars Hjemli
55ac326ecb Merge branch 'iconv-rebased' of http://x2a.org/pub/git/cgit
* 'iconv-rebased' of http://x2a.org/pub/git/cgit:
  Use utf8::reencode_string from git
  Convert subject and message with iconv_msg.
  Add iconv_msg function.
  Set msg_encoding according to the header.
  Add commit->msg_encoding, allocate msg dynamicly.
2007-11-06 00:38:18 +01:00
Lars Hjemli
d04c4734bc Show lines changed as -n/+m in shortlogs
This is way more informative than the total number of changed lines.

Suggested-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-06 00:35:12 +01:00
Lars Hjemli
a2ebbd6948 Use utf8::reencode_string from git
This replaces the iconv-support in cgit with similar functions already
existing in git.

Signed-off-by: Lars Hjemli <hjemli@gmai.com>
2007-11-05 18:13:31 -05:00
Jonathan Bastien-Filiatrault
7858a309d7 Convert subject and message with iconv_msg. 2007-11-05 18:13:31 -05:00
Jonathan Bastien-Filiatrault
af08198304 Add iconv_msg function. 2007-11-05 18:13:30 -05:00
Jonathan Bastien-Filiatrault
aa5cc328f4 Set msg_encoding according to the header. 2007-11-05 18:13:30 -05:00
Jonathan Bastien-Filiatrault
3845e177e4 Add commit->msg_encoding, allocate msg dynamicly. 2007-11-05 18:13:30 -05:00
Lars Hjemli
72ede12551 Don't show the the branch selector button if javascript is enabled
Suggested-by: Olivier Ramonat <olivier@ramonat.fr>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 14:17:58 +01:00
Lars Hjemli
601c76eb15 Do not require javascript-enabled clients
A simple submit-button is all that's required to make the branch selector
drop-down work on any client, so lets add one.

Noticed-by: Olivier Ramonat <olivier@ramonat.fr>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 14:05:12 +01:00
Lars Hjemli
e36365c684 CGIT 0.7 2007-11-03 11:35:55 +01:00
Lars Hjemli
c2f75225b4 Use GIT-1.5.3.5
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 11:33:54 +01:00
Lars Hjemli
1e4ff4dc50 Don't include current SHA1 in 'log' menu-item
This ensures that the menu-item always prints the log for the active branch.
Predictability is good.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 11:33:28 +01:00
Lars Hjemli
cda7194e30 Don't include current path in menu links
The menu-links are a lot more predictable this way.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 11:23:47 +01:00
Lars Hjemli
68cf9b4f85 Fix search form action/hidden fields
The search form didn't properly honor the current path, so this commit
fixes cgit_fileurl() and add_hidden_formfields() to make the issue go
away.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 11:15:56 +01:00
Lars Hjemli
51140311bb Add search parameters to cgit_log_link
This makes the [prev] and [next] links work correctly on search results.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 10:42:37 +01:00
Shunichi Fuji
df203a293e Fix typo in css
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03 09:36:09 +01:00
Lars Hjemli
0c8e184e9c Change the cgit layout
This modifies and hopefully improves the layout of all cgit pages:

  * Remove the header from all pages and replace it with a sidebar;
    most pages have sufficient width but many needs more height.

  * Add a dropdown-box to switch between branches, using a one-liner
    javascript to reload the current page in context of the selected branch.

  * Include refs found below refs/archives in the sidebar, appearing as a
    set of menuitems below a 'download' heading.

  * Include the brand new cgit logo

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-30 13:38:34 +01:00
Lars Hjemli
10ac7ad1f3 Add config param 'index-info'
This parameter will be used to include a html file in the upcoming sidebar
on the index page.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-30 10:39:59 +01:00
Lars Hjemli
fc5880fab8 Teach cgit_object_link() about tag objects
This makes random tag links more helpfull, e.g. when a branch head references
a tag object, link to the tag page.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28 15:41:58 +01:00
Lars Hjemli
cbcdbcf2bf Make print_branch() handle refs not pointing at commits
The master branch of stable/linux-2.6.20 currently references a tag
object, which makes print_branch() die with a segfault. This teaches
print_branch() to handle such cases more gracefully.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28 15:38:19 +01:00
Lars Hjemli
68ca032dbe Teach log search about --grep, --author and --committer
This makes the log searching more explicit, using a dropdown box to specify
the commit field to match against.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28 15:23:00 +01:00
Lars Hjemli
6ec5f36f27 Add html_option() function
This is a generic function used to output html "option" tags.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28 12:08:45 +01:00
Lars Hjemli
0c8dd9c4bc Merge branch 'stable'
* stable:
  cgit_parse_commit(): Add missing call to xstrdup()
2007-10-27 13:55:44 +02:00
Lars Hjemli
c61360fea0 cgit_parse_commit(): Add missing call to xstrdup()
It's rather silly to point into random memory-locations. Also, remove a
call to strdup() used on a literal char *.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-27 13:55:12 +02:00
Lars Hjemli
b4d4a25aa4 Cleanup code introduced by the filter-refs topic
The functions used to print branches and tags were only half-done and
somewhat confused. Fix it.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-27 13:34:17 +02:00
Lars Hjemli
dd0f27eb36 Merge branch 'filter-refs'
* filter-refs:
  Add links to the new refs page from summary page
  Add support for refs view
  Make cgit_print_branches()/cgit_print_tags() external
  Add descriptions of summary-branches and summary-tags to cgitrc
  Add support for config param summary-branches
  Move logic for age comparision from cmp_tag_age into cmp_age()
  Add support for config param summary-tags
  Sort tags by age
  Use reflist to print tag info
  Use reflist to print branch info
  Add functions and types for ref lists
2007-10-27 10:55:10 +02:00
Lars Hjemli
ac1f493b6b Add links to the new refs page from summary page
If either branches or tags are filtered on the summary page, add a link to
refs/heads and/or refs/tags right below the last branch/tag.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-27 10:53:28 +02:00