]> source.dussan.org Git - gitblit.git/commit
Implement mirror executor (issue-5)
authorJames Moger <james.moger@gitblit.com>
Wed, 13 Nov 2013 22:56:50 +0000 (17:56 -0500)
committerJames Moger <james.moger@gitblit.com>
Wed, 13 Nov 2013 22:56:50 +0000 (17:56 -0500)
commitc44dd099a432094a12131cf60dfc8a19f5aa8101
treed71d6130a1bd5a85a3c5b764a28b5eeebcc97906
parent064857d7b2a7e1a0c205dbecf7b5f147221898a2
Implement mirror executor (issue-5)

The mirror executor will fetch ref updates for repository mirrors.  This
feature is disabled by default and can be enabled by setting
git.enableMirroring=true.  The period between update checks is
configurable, but it is global.  An individual rpeository may not set
it's own update schedule.

Requirements:
1. you must manually clone the repository using native git
   git clone --mirror git://somewhere.com/myrepo.git
2. the "origin" remote must be the mirror source
3. the "origin" repository must be accessible without authentication OR
   the credentials must be embedded in the origin url (not recommended)

Notes:
1. "origin" SSH urls are untested and not likely to work
2. mirrors cloned while Gitblit is running are likely to require
   clearing the gitblit cache (link on the repositories page of an
   administrator account)
3. Gitblit will automatically repair any invalid fetch refspecs with a
   "//" sequence.

Change-Id: I4bbe3fb2df106366ae4c2313596d0fab0dfcac46
21 files changed:
build.xml
releases.moxie
src/main/distrib/data/gitblit.properties
src/main/java/com/gitblit/GitBlit.java
src/main/java/com/gitblit/MirrorExecutor.java [new file with mode: 0644]
src/main/java/com/gitblit/client/IndicatorsRenderer.java
src/main/java/com/gitblit/git/GitblitReceivePack.java
src/main/java/com/gitblit/models/RepositoryModel.java
src/main/java/com/gitblit/models/TeamModel.java
src/main/java/com/gitblit/models/UserModel.java
src/main/java/com/gitblit/utils/JGitUtils.java
src/main/java/com/gitblit/wicket/GitBlitWebApp.properties
src/main/java/com/gitblit/wicket/pages/RepositoryPage.html
src/main/java/com/gitblit/wicket/pages/RepositoryPage.java
src/main/java/com/gitblit/wicket/panels/ProjectRepositoryPanel.html
src/main/java/com/gitblit/wicket/panels/ProjectRepositoryPanel.java
src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.html
src/main/java/com/gitblit/wicket/panels/RepositoriesPanel.java
src/main/resources/mirror_16x16.png [new file with mode: 0644]
src/site/features.mkd
src/test/java/com/gitblit/tests/PermissionsTest.java