[PATCH v3 00/21] Add namespace support to cgit

Richard Maw richard.maw at gmail.com
Mon Aug 1 23:35:32 CEST 2016

The following changes since commit ff9893ac8192579a00dd4c73ddff18ab232099a6:

  Fix qry.head leak on error (2016-07-12 01:06:04 +0200)

are available in the git repository at:

  git://git.gitano.org.uk/cgit.git richardmaw/namespaces

for you to fetch changes up to c8ab2ce6fe19a1a9eacf2a384a6fbbe915be9dbc:

  Add documentation for repo.agefile (2016-08-01 22:17:42 +0100)

This version fixes a couple of issues with the log view,
which I had overlooked in my previous version.

1.  It now displays the namespaced version of the ref
2.  Decorative tags now only display those appropriate to the namespace

It also fixes a couple of other minor bugs,
and tries to unify namespace resolving logic a bit.

It turned out that the reason I thought I needed the NO_RECURSE flag
was that my test repository was broken
in that it had symbolic refs pointing outside the namespace.

I'm going to try adding namespaced functions to libgit later in the week.

Richard Maw (21):
  Return a copy of "master" when guessing defbranch fails
  Fix archive generation
  Add a wrapper for get_sha1 called cgit_get_sha1
  Parse repo.namespace
  Print out parsed namespace on request
  Set GIT_NAMESPACE when repo.namespace is provided
  Add namespaced resolve ref helper
  Add cgit_namespaced_dwim_ref for resolving short refs
  Look up refs in namespace with cgit_get_sha1
  Use cgit_namespaced_dwim_ref for finding logs to show
  Render commit decorations correctly
  Guess the default branch based on current namespace
  Add cgit_for_each_namespaced_ref_in helper
  Find the default branch based on the contents of the namespace
  Only display refs in current namespace
  Add namespace support to dumb-clone
  Display notes from namespace
  Add documentation for repo.namespace
  Allow agefile to be set per-repository
  Update contrib script to update agefiles per namespace
  Add documentation for repo.agefile

 cgit.c                             | 51 ++++++++++++++++----
 cgit.h                             | 10 ++++
 cgitrc.5.txt                       | 47 +++++++++++++++++++
 contrib/hooks/post-receive.agefile | 15 +++++-
 shared.c                           | 95 ++++++++++++++++++++++++++++++++++++++
 ui-blob.c                          |  6 +--
 ui-clone.c                         | 18 +++++++-
 ui-commit.c                        |  2 +-
 ui-diff.c                          |  4 +-
 ui-log.c                           | 40 +++++++++++-----
 ui-patch.c                         |  4 +-
 ui-plain.c                         |  2 +-
 ui-refs.c                          |  6 +--
 ui-repolist.c                      |  3 +-
 ui-shared.c                        |  8 ++--
 ui-snapshot.c                      | 14 +++---
 ui-tag.c                           |  2 +-
 ui-tree.c                          |  2 +-
 18 files changed, 281 insertions(+), 48 deletions(-)


More information about the CGit mailing list