James Moger
2014-06-16 111b48c40cd2cc4e19e28c8b6af8379885fb617b
Merge release 1.6.0
9 files added
32 files modified
2490 ■■■■■ changed files
HOME.md 5 ●●●●● patch | view | raw | blame | history
README.markdown 46 ●●●● patch | view | raw | blame | history
build.moxie 6 ●●●● patch | view | raw | blame | history
build.xml 30 ●●●●● patch | view | raw | blame | history
release.template 180 ●●●● patch | view | raw | blame | history
releases.moxie 53 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/client/GitblitClient.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/servlet/AuthenticationFilter.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/tickets/commands.md 2 ●●● patch | view | raw | blame | history
src/main/java/com/gitblit/transport/ssh/SshDaemon.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/gitblit/utils/StringUtils.java 4 ●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_de.properties 745 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_it.properties 745 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_ko.properties 70 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_nl.properties 90 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_no.properties 73 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/GitBlitWebApp_zh_CN.properties 74 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_de.html 60 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_it.html 60 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_ko.html 22 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_nl.html 10 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_no.html 60 ●●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_zh_CN.html 6 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/TicketsPage.java 8 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/UserPage.html 2 ●●● patch | view | raw | blame | history
src/main/java/com/gitblit/wicket/pages/UserPage.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/login_de.mkd 3 ●●●●● patch | view | raw | blame | history
src/main/java/login_it.mkd 4 ●●●● patch | view | raw | blame | history
src/main/java/welcome_de.mkd 3 ●●●●● patch | view | raw | blame | history
src/main/java/welcome_it.mkd 3 ●●●●● patch | view | raw | blame | history
src/site/administration.mkd 2 ●●● patch | view | raw | blame | history
src/site/features.mkd 19 ●●●●● patch | view | raw | blame | history
src/site/plugins_extensions.mkd 1 ●●●● patch | view | raw | blame | history
src/site/plugins_overview.mkd 2 ●●● patch | view | raw | blame | history
src/site/roadmap.mkd 7 ●●●●● patch | view | raw | blame | history
src/site/setup_transport_ssh.mkd 12 ●●●● patch | view | raw | blame | history
src/site/siteindex.mkd 22 ●●●●● patch | view | raw | blame | history
src/site/tickets_replication.mkd 4 ●●●● patch | view | raw | blame | history
src/site/tickets_setup.mkd 2 ●●● patch | view | raw | blame | history
src/site/tickets_using.mkd 17 ●●●●● patch | view | raw | blame | history
HOME.md
@@ -18,11 +18,6 @@
[[src/site/setup_war.mkd]]
[[src/site/upgrade_war.mkd]]
### Gitblit Express for OpenShift
[[src/site/setup_express.mkd]]
[[src/site/upgrade_express.mkd]]
### General Configuration & Administration
[[src/site/setup_authentication.mkd]]
README.markdown
@@ -1,7 +1,8 @@
Gitblit
=================
Gitblit is an open source, pure Java Git solution for managing, viewing, and serving [Git](http://git-scm.com) repositories.
Gitblit is an open source, pure Java Git solution for managing, viewing, and serving [Git](http://git-scm.com) repositories.  It can serve repositories over the GIT, HTTP, and SSH transports; it can authenticate against multiple providers; and it allows you to get up-and-running with an attractive, capable Git server in less than 5 minutes.
More information about Gitblit can be found [here](http://gitblit.com).
<a href='https://bintray.com/gitblit/releases/gitblit/_latestVersion'><img src='https://api.bintray.com/packages/gitblit/releases/gitblit/images/download.png'></a>
@@ -12,11 +13,6 @@
Gitblit is distributed under the terms of the [Apache Software Foundation license, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
The text of the license is included in the file LICENSE in the root of the project.
Contributing
------------
GitHub pull requests are preferred.  Any contributions must be distributed under the terms of the [Apache Software Foundation license, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
Java Runtime Requirement
------------------------------------
@@ -25,8 +21,38 @@
Getting help
------------
Read the online documentation available at the [Gitblit website](http://gitblit.com)
Issues, binaries, & sources @ [Google Code](http://code.google.com/p/gitblit)
| Source        | Location                                               |
| ------------- |--------------------------------------------------------|
| Documentation | [Gitblit website](http://gitblit.com)                  |
| Issues        | [Google Code](http://code.google.com/p/gitblit)        |
| Forums        | [Google Groups](https://groups.google.com/forum/#!forum/gitblit) |
| Twitter       | @gitblit or @jamesmoger                                |
| Google+       | +gitblit or +jamesmoger                                |
Contributing
------------
GitHub pull requests or Gitblit Tickets are preferred.  Any contributions must be distributed under the terms of the [Apache Software Foundation license, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
**Workflow**
Gitblit practices the [git-flow][1] branching model.
- **master** is the current stable release + fixes accumulated since release.
- **develop** is the integration branch for the next major release.
- **ticket/N** are feature or hotfix branches to be merged to **master** or **develop**, as appropriate.
**Feature Development**
Development of new features is mostly done using [Gitblit Tickets][2] hosted at [dev.gitblit.com][3].  This allows continuous dogfooding and improvement of Gitbit's own issue-tracker and pull-request mechanism.
**Release Planning**
Release planning is mostly done using Gitblit Milestones and Gitblit Tickets hosted at [dev.gitblit.com][3].
**Releasing**
When Gitblit is preparing for a release, a **release-{milestone}** branch will be created, tested, & fixed until it is ready to be merged to **master** and tagged as the next major release.  After the release is tagged, the **release-{milestone}** branch will also be merged back into **develop** and then the release branch will be removed.
Building Gitblit
----------------
@@ -49,3 +75,7 @@
----------------------
1. If you are running Ant from an ANSI-capable console, consider setting the `MX_COLOR` environment variable before executing Ant.<pre>set MX_COLOR=true</pre>
2. The build script will honor your Maven proxy settings.  If you need to fine-tune this, please review the [settings.moxie](http://gitblit.github.io/moxie/settings.html) documentation.
[1]: http://nvie.com/posts/a-successful-git-branching-model
[2]: http://gitblit.com/tickets_overview.html
[3]: https://dev.gitblit.com
build.moxie
@@ -10,12 +10,12 @@
description: pure Java Git solution
groupId: com.gitblit
artifactId: gitblit
version: 1.6.0-SNAPSHOT
version: 1.6.0
inceptionYear: 2011
# Current stable release
releaseVersion: 1.5.1
releaseDate: 2014-05-07
releaseVersion: 1.6.0
releaseDate: 2014-06-16
# Project urls
url: 'http://gitblit.com'
build.xml
@@ -560,6 +560,8 @@
                    <divider />
                    <link name="Gitblit GO (Docker)" src="https://registry.hub.docker.com/u/jmoger/gitblit/" />
                    <divider />
                    <link name="Plugins Registry" src="http://plugins.gitblit.com" />
                    <divider />
                    <link name="Gitblit Manager" src="${gc.url}manager-${project.releaseVersion}.zip" />
                    <link name="Federation Client" src="${gc.url}fedclient-${project.releaseVersion}.zip" />
                    <divider />
@@ -574,7 +576,7 @@
                <menu name="links">
                    <link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />
                    <divider />
                    <link name="Plugin Registry" src="http://plugins.gitblit.com" />
                    <link name="Plugins Registry" src="http://plugins.gitblit.com" />
                    <divider />
                    <link name="Github" src="${project.scmUrl}" />
                    <link name="Issues" src="${project.issuesUrl}" />
@@ -778,16 +780,38 @@
            </filterset>
        </copy>
        <chmod file="${recipe}" perm="ugo+rx" />
    </target>
    <!--
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Prepare for the next point release development cycle.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -->
    <target name="nextPointReleaseCycle" depends="prepare" description="prepare for the next point release development cycle">
        <!-- next cycle -->
        <mx:version stage="snapshot" incrementNumber="incremental" dryrun="${dryrun}" />
        <mx:commit showtitle="no">
            <message>Reset build identifiers for next development cycle</message>
            <message>Reset build identifiers for next point release cycle</message>
        </mx:commit>        
    </target>
        
    <!--
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Prepare for the next minor release development cycle.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -->
    <target name="nextMinorReleaseCycle" depends="prepare" description="prepare for the next minor release development cycle">
        <!-- next cycle -->
        <mx:version stage="snapshot" incrementNumber="minor" dryrun="${dryrun}" />
        <mx:commit showtitle="no">
            <message>Reset build identifiers for next minor release cycle</message>
        </mx:commit>
    </target>
  <!--
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Build Gitblit Docs
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -860,7 +884,7 @@
                    <menu name="links">
                        <link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />
                        <divider />
                        <link name="Plugin Registry" src="http://plugins.gitblit.com" />
                        <link name="Plugins Registry" src="http://plugins.gitblit.com" />
                        <divider />
                        <link name="Github" src="${project.scmUrl}" />
                        <link name="Issues" src="${project.issuesUrl}" />
release.template
@@ -1,84 +1,96 @@
#!/bin/bash
#
# ${project.version} release script
#
# ensure Maven repository is up-to-date
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Preparing Maven repository"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git checkout gh-pages
git pull
cd ${project.directory}
# go back one commit to RELEASE commit
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Checking out ${project.version} RELEASE commit ${project.commitId}"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git checkout ${project.commitId}
# build RELEASE artifacts
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Building ${project.version} RELEASE artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant clean buildAll buildMavenArtifacts
# commit all generated artifacts and metadata
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Committing Maven repository ${project.version} RELEASE artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git add .
git commit -m "${project.version} artifacts"
cd ${project.directory}
# upload artifacts
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Uploading ${project.version} artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant publishBinaries
# build site, update gh-pages, and ftp upload site to hosting provider
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Building ${project.version} website"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant publishSite
# return to project master
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Checking out master"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git checkout master
# push Maven repository to origin
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Pushing Maven repository"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git push origin gh-pages
cd ${project.directory}
# push project branches
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Pushing master, gh-pages, and tag ${project.tag}"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git push origin master gh-pages tag ${project.tag}
#!/bin/bash
#
# ${project.version} release script
#
# ensure Maven repository is up-to-date
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Preparing Maven repository"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git checkout gh-pages
git pull
cd ${project.directory}
# go back one commit to RELEASE commit
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Checking out ${project.version} RELEASE commit ${project.commitId}"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git checkout ${project.commitId}
# build RELEASE artifacts
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Building ${project.version} RELEASE artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant clean buildAll buildMavenArtifacts
# commit all generated artifacts and metadata
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Committing Maven repository ${project.version} RELEASE artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git add .
git commit -m "${project.version} artifacts"
cd ${project.directory}
# upload artifacts
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Uploading ${project.version} artifacts"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant publishBinaries
# build site, update gh-pages, and ftp upload site to hosting provider
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Building ${project.version} website"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
ant publishSite
# merge to master
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Merging release ${project.version} to master"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git checkout master
git merge -m "Merge release ${project.version}" ${project.commitId}
ant nextPointReleaseCycle
# merge to develop
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Merging release ${project.version} to develop"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git checkout develop
git merge -m "Merge release ${project.version}" ${project.commitId}
ant nextMinorReleaseCycle
# push Maven repository to origin
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Pushing Maven repository"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
cd ${maven.directory}
git push origin gh-pages
cd ${project.directory}
# push project branches
echo ""
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Pushing master, develop, gh-pages, and tag ${project.tag}"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
git push origin master develop gh-pages tag ${project.tag}
releases.moxie
@@ -1,13 +1,32 @@
#
# ${project.version} release
# 1.6.0 release
#
r24: {
    title: ${project.name} ${project.version} released
    id: ${project.version}
    date: ${project.buildDate}
    note: ~
    title: Gitblit 1.6.0 released
    id: 1.6.0
    date: 2014-06-16
    note: ''
          The next major release (v1.7.0) will focus on:
          * ticket-75: making projects more useful including the concept of project ownership
          This improvement will require a NON-BACKWARDS-COMPATIBLE migration of repository ownership from the RpeositoryModel to the UserModel
          * ticket-55: facilitating usage of tickets & git-flow in the web ui
          ''
    html: ~
    text: ~
    text: ''
          Highlights:
          * My Tickets page
          * User Preferences web ui
          * SSH key management web ui
          * Basic CRUD pages for ticket milestones
          * Overhaul repository creation, editing, and empty repository pages
          If you are upgrading, you might consider copying the data/gitignore folder to your ${baseFolder} to allow selection & injection of a .gitignore when creating a repository.
          The OpenShift Express build has been dropped. You can deploy GO or WAR on Express so this build is no longer necessary.
          ''
    security: ~
    fixes:
    - Allow ticket responsible selection if anonymous push is enabled (issue-425, ticket-71)
@@ -19,6 +38,9 @@
    - Removed Ticket responsible team permission exclusion (ticket-87)
    - Fixed SSH daemon thread exhaustion (ticket-89)
    - Fixed Ticket responsible selections not considering the AUTHENTICATED authorization control (ticket-91)
    - Fixed invalid generated SSH url for port 22 (issue-444, ticket-98)
    - Fix cloning repositories with `+` in their names. (revert pr-136, issue-362, ticket-100)
    - Fixed NPE in GitblitClient (ticket-102)
    changes:
    - Split the pages servlet into a raw servlet and a pages servlet. All raw links now use the raw servlet (issue-413, ticket-49)
    - Drop deprecated --set-upstream syntax for -u (ticket-59)
@@ -26,6 +48,7 @@
    - BARNUM: Create ticket/N instead of topic/N for pt start N (ticket-61)
    - Move repository deletion functions to the edit repository page AND allow deletion to be disabled (pr-180, ticket-67)
    - Update the Korean translation (pr-184, ticket-69)
    - Update the Dutch translation (pr-191)
    - Overhaul the EmptyRepositoryPage (ticket-73)
    - Overhauled the edit repository page (ticket-76)
    - Process bugtraq links in the ticket description and comments (ticket-78)
@@ -45,6 +68,9 @@
    - Tag server-side merges when incremental push tags are enabled (issue-432, ticket-85)
    - Add a user preference for the clone transport (ticket-90)
    - Add setting to control default thread pool size for miscellaneous background tasks (ticket-92)
    - Add Norwegian transation (pr-186)
    - Add German translation (pr-192)
    - Add Italian translation (pr-196)
    dependencyChanges:
    - Update to javax.mail 1.5.1 (issue-417, ticket-58)
    contributors:
@@ -58,6 +84,15 @@
    - Matthias Cullmann
    - Emmeran Seehuber
    - Sascha Vogt
    - Carsten Lenz
    - Matthias Sohn
    - Leif Jantzen
    - Stardrad Yin
    - Jeroen Baten
    - Dongsu Kim
    - Karanbir Singh
    - Tamás Papp
    - GianMaria Romanato
    settings:
    - { name: 'web.allowDeletingNonEmptyRepositories', defaultValue: 'true' }
    - { name: 'web.includePersonalRepositories', defaultValue: 'false' }
@@ -1379,6 +1414,6 @@
    - James Moger
}
snapshot: &r24
release: &r23
releases: &r[1..23]
snapshot: ~
release: &r24
releases: &r[1..24]
src/main/java/com/gitblit/client/GitblitClient.java
@@ -253,9 +253,11 @@
        // create list of available scripts by excluding inherited scripts
        List<String> scripts = new ArrayList<String>();
        for (String script : settings.pushScripts) {
            if (!inherited.contains(script)) {
                scripts.add(script);
        if (!ArrayUtils.isEmpty(settings.pushScripts)) {
            for (String script : settings.pushScripts) {
                if (!inherited.contains(script)) {
                    scripts.add(script);
                }
            }
        }
        return scripts;
src/main/java/com/gitblit/servlet/AuthenticationFilter.java
@@ -16,8 +16,6 @@
package com.gitblit.servlet;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.security.Principal;
import java.util.Enumeration;
import java.util.HashMap;
@@ -103,12 +101,6 @@
            url = url.substring(1);
        }
        String fullUrl = url + (StringUtils.isEmpty(params) ? "" : ("?" + params));
        try {
            fullUrl = URLDecoder.decode(fullUrl, "UTF-8");
        } catch (UnsupportedEncodingException e) {
            logger.warn("UTF-8 decoding of URL failed: "+fullUrl, e);
            e.printStackTrace();
        }
        return fullUrl;
    }
src/main/java/com/gitblit/tickets/commands.md
@@ -6,6 +6,6 @@
To review a rewritten patchset
    git fetch origin && git checkout ${ticketBranch} && git reset --hard origin/${ticketBranch}
    git fetch origin && git checkout -B ${ticketBranch}
src/main/java/com/gitblit/transport/ssh/SshDaemon.java
@@ -142,7 +142,7 @@
    public String formatUrl(String gituser, String servername, String repository) {
        if (sshd.getPort() == DEFAULT_PORT) {
            // standard port
            return MessageFormat.format("{0}@{1}/{2}", gituser, servername,
            return MessageFormat.format("ssh://{0}@{1}/{2}", gituser, servername,
                    repository);
        } else {
            // non-standard port
src/main/java/com/gitblit/utils/StringUtils.java
@@ -129,6 +129,8 @@
                retStr.append("%20");
            } else if (inStr.charAt(i) == '&') {
                retStr.append("%26");
            } else if (inStr.charAt(i) == '+') {
                retStr.append("%2B");
            } else {
                retStr.append(inStr.charAt(i));
            }
@@ -398,7 +400,7 @@
     * @return the first invalid character found or null if string is acceptable
     */
    public static Character findInvalidCharacter(String name) {
        char[] validChars = { '/', '.', '_', '-', '~' };
        char[] validChars = { '/', '.', '_', '-', '~', '+' };
        for (char c : name.toCharArray()) {
            if (!Character.isLetterOrDigit(c)) {
                boolean ok = false;
src/main/java/com/gitblit/wicket/GitBlitWebApp_de.properties
New file
@@ -0,0 +1,745 @@
gb.repository = Repository
gb.owner = Besitzer
gb.description = Beschreibung
gb.lastChange = Letzte \u00c4nderung
gb.refs = Refs
gb.tag = Tag
gb.tags = Tags
gb.author = Autor
gb.committer = Committer
gb.commit = Commit
gb.age = Alter
gb.tree = Dateibaum
gb.parent = Parent
gb.url = URL
gb.history = Historie
gb.raw = Raw
gb.object = Object
gb.ticketId = Ticket Id
gb.ticketAssigned = Zugewiesen
gb.ticketOpenDate = Erstellt
gb.ticketStatus = Status
gb.ticketComments = Kommentare
gb.view = Ansicht
gb.local = Lokal
gb.remote = Remote
gb.branches = Branches
gb.patch = Patch
gb.diff = Diff
gb.log = Log
gb.moreLogs = Weitere Commits...
gb.allTags = Alle Tags...
gb.allBranches = Alle Branches...
gb.summary = \u00dcbersicht
gb.ticket = Ticket
gb.newRepository = Neues Repository
gb.newUser = Neuer Benutzer
gb.commitdiff = Commitdiff
gb.tickets = Tickets
gb.pageFirst = Anfang
gb.pagePrevious = Zur\u00fcck
gb.pageNext = Weiter
gb.head = HEAD
gb.blame = Blame
gb.login = Login
gb.logout = Logout
gb.username = Benutzername
gb.password = Passwort
gb.tagger = Tagger
gb.moreHistory = Mehr Historie...
gb.difftocurrent = Diff zu aktuellem Stand
gb.search = Suche
gb.searchForAuthor = Suche nach Commits von Autor
gb.searchForCommitter = Suche nach Commits von Committer
gb.addition = Neu
gb.modification = Modifikation
gb.deletion = L\u00f6schung
gb.rename = Umbenennung
gb.metrics = Metriken
gb.stats = Statistiken
gb.markdown = Markdown
gb.changedFiles = Ge\u00e4nderte Dateien
gb.filesAdded = {0} Dateien hinzugef\u00fcgt
gb.filesModified = {0} Dateien ge\u00e4ndert
gb.filesDeleted = {0} Dateien gel\u00f6scht
gb.filesCopied = {0} Dateien kopiert
gb.filesRenamed = {0} Dateien umbenannt
gb.missingUsername = Fehlender Benutzername
gb.edit = Bearbeiten
gb.searchTypeTooltip = Suchart ausw\u00e4hlen
gb.searchTooltip = Suche {0}
gb.delete = L\u00f6schen
gb.docs = Dokumentation
gb.accessRestriction = Zugriffsbeschr\u00e4nkung
gb.name = Name
gb.enableTickets = Tickets aktivieren
gb.enableDocs = Docs aktivieren
gb.save = Speichern
gb.showRemoteBranches = Zeige Remote Branches
gb.editUsers = Benutzer bearbeiten
gb.confirmPassword = Passwort best\u00e4tigen
gb.restrictedRepositories = Zugriffsbeschr\u00e4nkte Repositories
gb.canAdmin = Kann administrieren
gb.notRestricted = Anonymes Anzeigen, Klonen und Pushen
gb.pushRestricted = Authentifiziertes Pushen
gb.cloneRestricted = Authentifiziertes Klonen und Pushen
gb.viewRestricted = Authentifiziertes Anzeigen, Klonen und Pushen
gb.useTicketsDescription = Lesende Darstellung von Ticgit Issues
gb.useDocsDescription = Listet Markdown Dokumentation im Repository auf
gb.showRemoteBranchesDescription = Zeige Remote Branches
gb.canAdminDescription = Kann Gitblit Server administrieren
gb.permittedUsers = Zugelassene Benutzer
gb.isFrozen = ist eingefroren
gb.isFrozenDescription = Verbiete Push
gb.zip = Zip
gb.showReadme = Zeige Readme
gb.showReadmeDescription = Zeigt eine \"Readme\" Markdown Datei auf der Zusammenfassungsseite
gb.nameDescription = Verwenden Sie '/' um Repositories zu gruppieren. Z.B. libraries/mycoollib.git
gb.ownerDescription = Der Besitzer kann Repository-Einstellungen \u00e4ndern
gb.blob = Blob
gb.commitActivityTrend = Commit-Aktivit\u00e4tstrend
gb.commitActivityDOW = Commit-Aktivit\u00e4t nach Wochentag
gb.commitActivityAuthors = Prim\u00e4re Autoren nach Commit-Aktivit\u00e4t
gb.feed = Feed
gb.cancel = Abbrechen
gb.changePassword = Passwort \u00e4ndern
gb.isFederated = ist verbunden
gb.federateThis = Dieses Repository verbinden (Federation)
gb.federateOrigin = Ursprung (origin) verbinden (Federation)
gb.excludeFromFederation = Von Verbindung ausschlie\u00dfen (Federation)
gb.excludeFromFederationDescription = Verbiete verbundenen Gitblit Instanzen, von diesem Konto zu pullen (Federation)
gb.tokens = Federation Tokens
gb.tokenAllDescription = Alle Repositories, Benutzer und Einstellungen
gb.tokenUnrDescription = Alle Repositories und Benutzer
gb.tokenJurDescription = Alle Repositories
gb.federatedRepositoryDefinitions = Repositorydefinitionen
gb.federatedUserDefinitions = Benutzerdefinitionen
gb.federatedSettingDefinitions = Einstellungsdefinitionen
gb.proposals = Verbindungsanfrage (Federation)
gb.received = empfangen
gb.type = Typ
gb.token = Token
gb.repositories = Repositories
gb.proposal = Anfrage
gb.frequency = Frequenz
gb.folder = Ordner
gb.lastPull = Letzter Pull
gb.nextPull = N\u00e4chster Pull
gb.inclusions = Inclusions
gb.exclusions = Exclusions
gb.registration = Registrierungen
gb.registrations = Verbindungsregistrierungen
gb.sendProposal = Vorschlagen
gb.status = Status
gb.origin = Ursprung
gb.headRef = Default Branch (HEAD)
gb.headRefDescription = Der Default Branch, welcher gecloned und auf der Zusammenfassungsseite dargestellt wird
gb.federationStrategy = Verbindungsstrategie
gb.federationRegistration = Verbindungsregistrierung
gb.federationResults = Verbindungs-Pull-Ergebnis
gb.federationSets = federation sets
gb.message = Nachricht
gb.myUrlDescription = Die \u00f6ffentlich zugreifbare URL f\u00fcr Ihre Gitblit-Instanz
gb.destinationUrl = Senden an
gb.destinationUrlDescription = Die URL der Gitblit-Instanz, an welche die Anfrage gestellt werden soll
gb.users = Benutzer
gb.federation = Verbindungen (Federation)
gb.error = Fehler
gb.refresh = Aktualisieren
gb.browse = Durchsuchen
gb.clone = Clonen
gb.filter = Filter
gb.create = Erstellen
gb.servers = Server
gb.recent = K\u00fcrzlich
gb.available = Verf\u00fcgbar
gb.selected = Ausgew\u00e4hlt
gb.size = Gr\u00f6\u00dfe
gb.downloading = Wird heruntergeladen
gb.loading = Wird geladen
gb.starting = Wird gestartet
gb.general = Allgemein
gb.settings = Einstellungen
gb.manage = Verwalten
gb.lastLogin = Letzter Login
gb.skipSizeCalculation = \u00dcberspringe Gr\u00f6\u00dfenberechnung
gb.skipSizeCalculationDescription = Nicht die Gr\u00f6\u00dfe des Repositories berechnen (reduziert die Seitenladezeit)
gb.skipSummaryMetrics = \u00dcberspringe zusammenfassende Metriken
gb.skipSummaryMetricsDescription = Nicht die Metriken auf der Zusammenfassungsseite berechnen (reduziert die Seitenladezeit)
gb.accessLevel = Zugangsebene
gb.default = Default
gb.setDefault = Setze Default
gb.since = seit
gb.status = Status
gb.bootDate = Boot-Zeitpunkt
gb.servletContainer = Servlet container
gb.heapMaximum = Maximaler Heap
gb.heapAllocated = Allokierter Heap
gb.heapUsed = Verwendeter Heap
gb.free = Verf\u00fcgbar
gb.version = Version
gb.releaseDate = Releasedatum
gb.date = Datum
gb.activity = Aktivit\u00e4t
gb.subscribe = Subscribe
gb.branch = Branch
gb.maxHits = Max Hits
gb.recentActivity = K\u00fcrzliche Aktivit\u00e4t
gb.recentActivityStats = In den letzten {0} Tagen / {1} Commit(s) von {2} Autor(en)
gb.recentActivityNone = In den letzten {0} Tagen / Keine
gb.dailyActivity = T\u00e4gliche Aktivit\u00e4t
gb.activeRepositories = Aktive Repositories
gb.activeAuthors = Aktive Autoren
gb.commits = Commits
gb.teams = Teams
gb.teamName = Teamname
gb.teamMembers = Teammitglieder
gb.teamMemberships = Teammitgliedschaften
gb.newTeam = Neues Team
gb.permittedTeams = Zugelassene Teams
gb.emptyRepository = Leeres Repository
gb.repositoryUrl = Repository URL
gb.mailingLists = Mailinglisten
gb.preReceiveScripts = Pre-Receive Skripte
gb.postReceiveScripts = Post-Receive Skripte
gb.hookScripts = Hook Skripte
gb.customFields = Benutzerdefinierte Felder
gb.customFieldsDescription = Benutzerdefinierte Felder, die in Groovy Hooks zur Verf\u00fcgung stehen
gb.accessPermissions = Zugriffsberechtigungen
gb.filters = Filter
gb.generalDescription = Allgemeine Einstellungen
gb.accessPermissionsDescription = Zugriffseinschr\u00e4nkungen nach Benutzern und Teams
gb.accessPermissionsForUserDescription = Erstellen Sie Teammitgliedschaften oder gew\u00e4hren Sie Zugriff auf einzelnen Repositories
gb.accessPermissionsForTeamDescription = Weisen Sie Team Mitglieder zu oder gew\u00e4hren Sie Zugriff auf einzelne Repositories
gb.federationRepositoryDescription = Verbinden Sie dieses Repository mit anderen Gitblit Instanzen (Federation)
gb.hookScriptsDescription = Groovy Skripte beim Pushen auf diese Gitblit Instanz ausf\u00fchren
gb.reset = Reset
gb.pages = Seiten
gb.workingCopy = Arbeitskopie
gb.workingCopyWarning = Dieses Repository besitzt eine Arbeitskopie und kann keine Pushes empfangen
gb.query = Abfrage
gb.queryHelp = Standard Abfragesyntax wird unterst\u00fctzt.<p/><p/>Unter <a target="_new" href="http://lucene.apache.org/core/old_versioned_docs/versions/3_5_0/queryparsersyntax.html">Lucene Query Parser Syntax</a> finden Sie weitere Details.
gb.queryResults = Ergebnisse {0} - {1} ({2} Treffer)
gb.noHits = Keine Treffer
gb.authored = ist Autor von
gb.committed = ist Comitter von
gb.indexedBranches = Indizierte Branches
gb.indexedBranchesDescription = W\u00e4hlen Sie die zu indizierenden Branches aus.
gb.noIndexedRepositoriesWarning = Keines Ihrer Repositories ist f\u00fcr die Indizierung durch Lucene konfiguriert.
gb.undefinedQueryWarning = Abfrage fehlt!
gb.noSelectedRepositoriesWarning = Bitte w\u00e4hlen Sie ein oder mehrere Repositories aus!
gb.luceneDisabled = Indizierung mit Lucene ist deaktiviert
gb.failedtoRead = Fehler beim Lesen
gb.isNotValidFile = ist keine g\u00fcltige Datei
gb.failedToReadMessage = Konnte Standard Nachricht von {0} nicht lesen!
gb.passwordsDoNotMatch = Passw\u00f6rter stimmen nicht \u00fcberein!
gb.passwordTooShort = Passwort ist zu kurz. Die minimale L\u00e4nge betr\u00e4gt {0} Zeichen.
gb.passwordChanged = Passwort erfolgreich ge\u00e4ndert.
gb.passwordChangeAborted = Passwort\u00e4nderung abgebrochen.
gb.pleaseSetRepositoryName = Bitte Repositorynamen angeben!
gb.illegalLeadingSlash = Pfade d\u00fcrfen nicht mit '/' beginnen.
gb.illegalRelativeSlash = Relative Pfade (../) sind nicht erlaubt.
gb.illegalCharacterRepositoryName = Repositoryname enth\u00e4lt nicht erlaubtes Zeichen ''{0}''!
gb.selectAccessRestriction = Bitte w\u00e4hlen Sie die Zugriffsbeschr\u00e4nkung aus!
gb.selectFederationStrategy = Bitte w\u00e4hlen Sie die Verbindungsstrategie (Federation) aus!
gb.pleaseSetTeamName = Bitte geben Sie einen Teamnamen an!
gb.teamNameUnavailable = Der Teamname ''{0}'' ist nicht verf\u00fcgbar.
gb.teamMustSpecifyRepository = Ein Team muss mindestens einem Repository zugewiesen sein.
gb.teamCreated = Neues Team ''{0}'' erfolgreich angelegt.
gb.pleaseSetUsername = Bitte geben Sie einen Benutzernamen an!
gb.usernameUnavailable = Benutzername ''{0}'' ist nicht verf\u00fcgbar.
gb.combinedMd5Rename = Gitblit ist f\u00fcr kombiniertes MD5-Passwort-Hashing konfiguriert. Sie m\u00fcssen beim Umbenennen des Kontos ein neues Passwort angeben.
gb.userCreated = Neuer Benutzer ''{0}'' erfolgreich angelegt.
gb.couldNotFindFederationRegistration = Konnte Verbindungsregistrierung (Federation) nicht finden!
gb.failedToFindGravatarProfile = Das Gravatar Profil f\u00fcr {0} konnte nicht gefunden werden
gb.branchStats = {0} Commit(s) und {1} Tag(s) seit {2}
gb.repositoryNotSpecified = Repository nicht angegeben!
gb.repositoryNotSpecifiedFor = Repository nicht angegeben f\u00fcr {0}!
gb.canNotLoadRepository = Repository kann nicht geladen werden
gb.commitIsNull = Commit ist null
gb.unauthorizedAccessForRepository = Nicht autorisierter Zugriff auf Repository
gb.failedToFindCommit = Commit \"{0}\" konnte nicht in {1} gefunden werden!
gb.couldNotFindFederationProposal = Verbindungsanfrage (Federation) konnte nicht gefunden werden!
gb.invalidUsernameOrPassword = Ung\u00fcltiger Benutzername oder Passwort!
gb.OneProposalToReview = Es gibt 1 unbeantwortete Verbindungsanfrage.
gb.nFederationProposalsToReview = Es gibt {0} unbeantwortete Verbindungsanfragen.
gb.couldNotFindTag = Der Tag {0} konnte nicht gefunden werden
gb.couldNotCreateFederationProposal = Die Verbindungsanfrage (Federation) konnte nicht erstellt werden.
gb.pleaseSetGitblitUrl = Bitte geben Sie Ihre Gitblit URL ein!
gb.pleaseSetDestinationUrl = Bitte geben Sie eine Ziel-URL f\u00fcr Ihre Anfrage ein!
gb.proposalReceived = Anfrage von {0} erfolgreich empfangen.
gb.noGitblitFound = Tut mir leid, {0} fand keine Gitblit Instanz in
gb.noProposals = Tut mir leid, {0} akzeptiert derzeit keine Anfragen.
gb.noFederation = Tut mir leid, {0} kann sich nicht mit anderen Gitblit Instanzen verbinden.
gb.proposalFailed = Tut mir leid, {0} hat keine Anfragedaten emfpangen!
gb.proposalError = Tut mir leid, {0} berichtet, dass ein unerwarteter Fehler aufgetreten ist!
gb.failedToSendProposal = Senden der Anfrage ist fehlgeschlagen!
gb.userServiceDoesNotPermitAddUser = {0} erlaubt das Anlegen von Benutzerkonten nicht.
gb.userServiceDoesNotPermitPasswordChanges = {0} erlaubt das \u00c4ndern von Passworten nicht!
gb.displayName = Anzeigename
gb.emailAddress = Emailadresse
gb.errorAdminLoginRequired = Administrierung erfordert eine Anmeldung
gb.errorOnlyAdminMayCreateRepository = Nur ein Administrator kann ein Repository erstellen
gb.errorOnlyAdminOrOwnerMayEditRepository = Nur ein Administrator oder der Besitzer kann ein Repository bearbeiten
gb.errorAdministrationDisabled = Administrierung ist deaktiviert
gb.lastNDays = letzte {0} Tage
gb.completeGravatarProfile = Komplettes Profil auf Gravatar.com
gb.none = keine
gb.line = Zeile
gb.content = Inhalt
gb.empty = leer
gb.inherited = vererbt
gb.deleteRepository = Repository \"{0}\" l\u00f6schen?
gb.repositoryDeleted = Repository ''{0}'' gel\u00f6scht.
gb.repositoryDeleteFailed = L\u00f6schen von Repository ''{0}'' fehlgeschlagen!
gb.deleteUser = Benutzer \"{0}\" l\u00f6schen?
gb.userDeleted = Benutzer ''{0}'' gel\u00f6scht.
gb.userDeleteFailed = L\u00f6schen von Benutzer ''{0}'' fehlgeschlagen!
gb.time.justNow = Gerade eben
gb.time.today = Heute
gb.time.yesterday = Gestern
gb.time.minsAgo = vor {0} Min.
gb.time.hoursAgo = vor {0} Std.
gb.time.daysAgo = vor {0} Tagen
gb.time.weeksAgo = vor {0} Wochen
gb.time.monthsAgo = vor {0} Monaten
gb.time.oneYearAgo = vor 1 Jahr
gb.time.yearsAgo = vor {0} Jahren
gb.duration.oneDay = 1 Tag
gb.duration.days = {0} Tage
gb.duration.oneMonth = 1 Monat
gb.duration.months = {0} Monaten
gb.duration.oneYear = 1 Jahr
gb.duration.years = {0} Jahren
gb.authorizationControl = Zugriffsrechte
gb.allowAuthenticatedDescription = Allen authentifizierten Benutzern RW+ Recht gew\u00e4hren
gb.allownameddescription = Benutzern und Teams feingranulare Rechte gew\u00e4hren
gb.markdownFailure = Markdown Inhalt konnte nicht geparst werden!
gb.clearCache = Cache leeren
gb.projects = Projekte
gb.project = Projekt
gb.allProjects = Alle Projekte
gb.copyToClipboard = in die Zwischenablage kopieren
gb.fork = Fork
gb.forks = Forks
gb.forkRepository = {0} forken?
gb.repositoryForked = Fork von {0} wurde erstellt
gb.repositoryForkFailed = Fork ist fehlgeschlagen
gb.personalRepositories = Pers\u00f6nliche Repositories
gb.allowForks = Forks erlauben
gb.allowForksDescription = Erlaube authentifizierten Benutzern dieses Repository zu forken
gb.forkedFrom = Fork von
gb.canFork = Kann forken
gb.canForkDescription = Kann autorisierte Repositories als pers\u00f6nliche Repositories forken
gb.myFork = Meinen Fork anschauen
gb.forksProhibited = Forks verboten
gb.forksProhibitedWarning = Dieses Repository verbietet Forks
gb.noForks = {0} hat keine Forks
gb.forkNotAuthorized = Entschuldigung, Sie sind nicht berechtigt einen Fork von {0} zu erstellen
gb.forkInProgress = Fork in Bearbeitung
gb.preparingFork = Ihr Fork wird vorbereitet...
gb.isFork = ist ein Fork
gb.canCreate = Kann Erstellen
gb.canCreateDescription = Kann pers\u00f6nliche Repositories erstellen
gb.illegalPersonalRepositoryLocation = your personal repository must be located at \"{0}\"
gb.verifyCommitter = Committer verifizieren
gb.verifyCommitterDescription = Die Committer Identit\u00e4t muss mit dem Gitblit Benutzerkonto \u00fcbereinstimmen, dass den Push durchf\u00fchrt
gb.verifyCommitterNote = Alle Merge Operationen ben\u00f6tigen "--no-ff" um die Committer Identit\u00e4t zu erzwingen
gb.repositoryPermissions = Repositoryberechtigungen
gb.userPermissions = Benutzerberechtigungen
gb.teamPermissions = Teamberechtigungen
gb.add = Hinzuf\u00fcgen
gb.noPermission = DIESE BERECHTIGUNG L\u00d6SCHEN
gb.excludePermission = {0} (Ausschlie\u00dfen)
gb.viewPermission = {0} (Ansicht)
gb.clonePermission = {0} (Clonen)
gb.pushPermission = {0} (Pushen)
gb.createPermission = {0} (Pushen, Erzeugen von Refs)
gb.deletePermission = {0} (Pushen, Erzeugen und L\u00f6schen von Refs)
gb.rewindPermission = {0} (Pushen, Erzeugen, L\u00f6schen und Umsetzen von Refs)
gb.permission = Berechtigung
gb.regexPermission = Diese Berechtigung ergibt sich aus dem regul\u00e4ren Ausdruck "{0}"
gb.accessDenied = Zugang verweigert
gb.busyCollectingGarbage = Tut mir leid, Gitblit f\u00fchrt gerade eine Garbage Collection in {0} durch
gb.gcPeriod = GC Intervall
gb.gcPeriodDescription = Zeitraum zwischen Garbage Collections
gb.gcThreshold = GC Schwellwert
gb.gcThresholdDescription = Minimale Gr\u00f6\u00dfe von losen Objekten, um eine vorzeitge Garbage Collection zu starten
gb.ownerPermission = Repositorybesitzer
gb.administrator = Administrator
gb.administratorPermission = Gitblit Administrator
gb.team = Team
gb.teamPermission = Berechtigung gesetzt durch Mitgliedschaft im Team \"{0}\"
gb.missing = fehlt!
gb.missingPermission = Das Repository f\u00fcr diese Berechtigung fehlt!
gb.mutable = ver\u00e4nderlich
gb.specified = angegeben
gb.effective = effektiv
gb.organizationalUnit = Organisatorische Einheit
gb.organization = Organisation
gb.locality = Lage
gb.stateProvince = Bundesland oder Provinz
gb.countryCode = L\u00e4ndercode
gb.properties = Eigenschaften
gb.issued = herausgegeben
gb.expires = l\u00e4uft ab
gb.expired = abgelaufen
gb.expiring = l\u00e4uft ab
gb.revoked = widerrufen
gb.serialNumber = Seriennummer
gb.certificates = Zertifkate
gb.newCertificate = Neues Zertifikat
gb.revokeCertificate = Zertifikat widerrufen
gb.sendEmail = Sende E-Mail
gb.passwordHint = Passwort Hinweis
gb.ok = OK
gb.invalidExpirationDate = Ung\u00fcltiges Ablaufdatum!
gb.passwordHintRequired = Passworthinweis ben\u00f6tigt!
gb.viewCertificate = Zertifikat anschauen
gb.subject = Betreff
gb.issuer = Aussteller
gb.validFrom = G\u00fcltig von
gb.validUntil = G\u00fcltig bis
gb.publicKey = \u00d6ffentlicher Schl\u00fcssel
gb.signatureAlgorithm = Signaturalgorithmus
gb.sha1FingerPrint = SHA-1 Fingerabdruck
gb.md5FingerPrint = MD5 Fingerabdruck
gb.reason = Grund
gb.revokeCertificateReason = Bitte w\u00e4hlen Sie einen Grund f\u00fcr den Widerruf des Zertifikats aus
gb.unspecified = nicht angegeben
gb.keyCompromise = Schl\u00fcssel kompromittiert
gb.caCompromise = CA kompromittiert
gb.affiliationChanged = Mitgliedschaft ge\u00e4ndert
gb.superseded = ersetzt
gb.cessationOfOperation = T\u00e4tigkeit eingestellt
gb.privilegeWithdrawn = Privilegien zur\u00fcckgezogen
gb.time.inMinutes = in {0} Minuten
gb.time.inHours = in {0} Stunden
gb.time.inDays = in {0} Tagen
gb.hostname = Hostname
gb.hostnameRequired = Bitte geben Sie einen Hostnamen ein
gb.newSSLCertificate = Neues Server-SSL-Zertifikat
gb.newCertificateDefaults = Voreinstellungen f\u00fcr neue Zertifikate
gb.duration = Dauer
gb.certificateRevoked = Zertifikat {0,number,0} wurde widerufen
gb.clientCertificateGenerated = Neues Client-Zertifikat f\u00fcr {0} wurde erfolgreich erstellt
gb.sslCertificateGenerated = Neues Server-SSL-Zertifikat f\u00fcr {0} wurde erfolgreich erstellt
gb.newClientCertificateMessage = ANMERKUNG:\nDas "Passwort" ist nicht das Passwort des Benutzers, es ist das Passwort, um den Keystore des Benutzers zu sch\u00fctzen. Dieses Passwort wird nicht gespeichert, also m\u00fcssen Sie einen "Hinweis" eingeben. Dieser Hinweis wird in den README Anweisungen des Benutzers hinterlegt.
gb.certificate = Zertifkat
gb.emailCertificateBundle = Client-Zertifikat-Bundle per Email senden
gb.pleaseGenerateClientCertificate = Bitte generieren Sie ein Client Zertifikat f\u00fcr {0}
gb.clientCertificateBundleSent = Client-Zertifikat-Bundel f\u00fcr {0} gesendet
gb.enterKeystorePassword = Bitte geben Sie das Gitblit-Keystore-Passwort ein
gb.warning = Warnung
gb.jcwWarning = Ihrem Java Runtime Environment fehlen die \"JCE Unlimited Strength Jurisdiction Policy\" Dateien.\nDies schr\u00e4nkt die L\u00e4nge der Passw\u00f6rter, die Sie zum Verschl\u00fcsseln Ihrer Keystores verwenden k\u00f6nnen, auf 7 Zeichen ein.\nDiese Policy-Dateien sind ein optionaler Download von Oracle.\n\nM\u00f6chten Sie fortfahren und die Zertifikat-Infrastruktur trotzdem erstellen?\n\nWenn Sie mit Nein antworten, wird Ihr Browser die Oracle Download-Seite \u00f6ffnen, auf welcher Sie die Policy-Dateien herunterladen k\u00f6nnen.
gb.maxActivityCommits = Maximale Commits Aktivit\u00e4t
gb.maxActivityCommitsDescription = Maximale Anzahl von Commits die auf der Aktivit\u00e4tsseite dargestellt werden
gb.noMaximum = Kein Maximum
gb.attributes = Attribute
gb.serveCertificate = Verwende dieses Zertifikat f\u00fcr HTTPS
gb.sslCertificateGeneratedRestart = Neues SSL-Server-Zertifikat f\u00fcr {0} erfolgreich erstellt.\nSie m\u00fcssen Gitblit neu starten, um dieses Zertifikat nutzen zu k\u00f6nnen.\n\nWenn Sie dem '--alias' Parameter starten, m\u00fcssen Sie diesen auf '--alias {0}' setzen.
gb.validity = G\u00fcltigkeit
gb.siteName = Seitenname
gb.siteNameDescription = Kurzer, beschreibender Name Ihres Servers
gb.excludeFromActivity = Von der Aktivi\u00e4tenseite ausschlie\u00dfen
gb.isSparkleshared = Repository ist in einem Sparkleshare
gb.owners = Besitzer
gb.sessionEnded = Die Sitzung wurde geschlossen
gb.closeBrowser = Bitte schlie\u00dfen Sie den Browser um die Sitzung ordentlich zu beenden.
gb.doesNotExistInTree = {0} existiert im Dateibaum {1} nicht
gb.enableIncrementalPushTags = Aktiviere inkrementelle Push-Tags
gb.useIncrementalPushTagsDescription = Erzeuge beim Push automatisch ein Tag mit aufsteigender Revisionsnummer auf der Spitze jedes Branches
gb.incrementalPushTagMessage = Auto-tagged [{0}] branch on push
gb.externalPermissions = {0} Zugangsberechtigungen werden extern verwaltet
gb.viewAccess = Sie haben keinen Gitblit Lese- oder Schreibzugriff
gb.overview = \u00dcbersicht
gb.dashboard = Dashboard
gb.monthlyActivity = Monatliche Aktivit\u00e4t
gb.myProfile = Mein Profil
gb.compare = Vergleichen
gb.manual = Manuell
gb.from = von
gb.to = nach
gb.at = bei
gb.of = von
gb.in = in
gb.moreChanges = alle \u00c4nderungen...
gb.pushedNCommitsTo = Push von {0} Commits nach
gb.pushedOneCommitTo = Push von einem Commit nach
gb.commitsTo = {0} commits nach
gb.oneCommitTo = 1 Commit nach
gb.byNAuthors = von {0} Autoren
gb.byOneAuthor = von {0}
gb.viewComparison = Zeige einen Vergleich von diesen {0} Commits \u00bb
gb.nMoreCommits = {0} weitere Commits \u00bb
gb.oneMoreCommit = 1 weiterer Commit \u00bb
gb.pushedNewTag = Push von neuem Tag
gb.createdNewTag = Neuer Tag angelegt
gb.deletedTag = Tag gel\u00f6scht
gb.pushedNewBranch = Push von neuem Branch durchgef\u00fchrt
gb.createdNewBranch = Neuer Branch angelegt
gb.deletedBranch = Branch gel\u00f6scht
gb.createdNewPullRequest = Neuer Pull Request gestellt
gb.mergedPullRequest = Merge des Pull Request durchgef\u00fchrt
gb.rewind = REWIND
gb.star = Favorisieren
gb.unstar = Nicht mehr favorisieren
gb.stargazers = Stargazers
gb.starredRepositories = Favorisierte Repositories
gb.failedToUpdateUser = Aktualisierung des Benutzerkontos fehlgeschlagen!
gb.myRepositories = Meine Repositories
gb.noActivity = In den letzten {0} Tagen gab es keine Aktivit\u00e4t
gb.findSomeRepositories = finde Repositories
gb.metricAuthorExclusions = Ausschl\u00fcsse von Autor-Metriken
gb.myDashboard = Mein Dashboard
gb.failedToFindAccount = Benutzerkonto "{0}" konnte nicht gefunden werden
gb.reflog = Reflog
gb.active = Aktiv
gb.starred = Favorisiert
gb.owned = Eigene
gb.starredAndOwned = Favorisiert und Eigene
gb.reviewPatchset = Review {0} Patchset {1}
gb.todaysActivityStats = Heute / {1} Commits von {2} Autoren
gb.todaysActivityNone = Heute / keine
gb.noActivityToday = Heute gab es keine Aktivit\u00e4t
gb.anonymousUser= Anonym
gb.commitMessageRenderer = Commit-Message Renderer
gb.diffStat = {0} Einf\u00fcgungen & {1} L\u00f6schungen
gb.home = Startseite
gb.isMirror = Dieses Repository ist ein Mirror
gb.mirrorOf = Mirror von {0}
gb.mirrorWarning = Dieses Repository ist ein Mirror und kann keine Pushes empfangen
gb.docsWelcome1 = Sie k\u00f6nnen Dokumente verwenden, um Ihr Repository zu dokumentieren.
gb.docsWelcome2 = Committen Sie eine README.md oder eine HOME.md Datei, um zu beginnen.
gb.createReadme = Eine README erstellen
gb.responsible = Bearbeiter
gb.createdThisTicket = erstellte dieses Ticket
gb.proposedThisChange = schlug diese \u00c4nderung vor
gb.uploadedPatchsetN = lud Patchset {0} hoch
gb.uploadedPatchsetNRevisionN = lud Patchset {0} Revision {1} hoch
gb.mergedPatchset = Merge des Patchset durchgef\u00fchrt
gb.commented = kommentierte
gb.noDescriptionGiven = keine Beschreibung hinterlegt
gb.toBranch = nach {0}
gb.createdBy = angelegt durch
gb.oneParticipant = {0} Teilnehmer
gb.nParticipants = {0} Teilnehmer
gb.noComments = keine Kommentare
gb.oneComment = {0} Kommentar
gb.nComments = {0} Kommentare
gb.oneAttachment  = {0} Anhang
gb.nAttachments = {0} Anh\u00e4nge
gb.milestone = Meilenstein
gb.compareToMergeBase = Mit Merge-Basis vergleichen
gb.compareToN = mit {0} vergleichen
gb.open = Offen
gb.closed = Geschlossen
gb.merged = Merge erfolgt
gb.ticketPatchset = Ticket {0}, Patchset {1}
gb.patchsetMergeable = Dieses Patchset kann automatisch mit {0} zusammengef\u00fchrt werden.
gb.patchsetMergeableMore = Dieses Patchset kann auch auf der Kommandozeile mit {0} zusammengef\u00fchrt werden.
gb.patchsetAlreadyMerged = Dieses Patcheset wurde mit {0} zusammengef\u00fchrt.
gb.patchsetNotMergeable = Dieses Patchset kann nicht automatisch mit {0} zusammengef\u00fchrt werden.
gb.patchsetNotMergeableMore = Dieses Patchset ben\u00f6tigt einen Rebase oder muss manuell mit {0} zusammengef\u00fchrt werden, um Konflikte zu beheben.
gb.patchsetNotApproved = Diese Patchset-Revision wurde noch nicht zum Zusammenf\u00fchren mit {0} freigegeben.
gb.patchsetNotApprovedMore = Ein Reviewer muss dieses Patchset freigeben.
gb.patchsetVetoedMore = Ein Reviewer hat dieses Patchset abgelehnt.
gb.write = Verfassen
gb.comment = Kommentieren
gb.preview = Vorschau
gb.leaveComment = Hinterlasse einen Kommentar
gb.showHideDetails = Zeige/Verberge Details
gb.acceptNewPatchsets = Patchsets annehmen
gb.acceptNewPatchsetsDescription = Nimm Patchsets an dieses Repository per Push an
gb.acceptNewTickets = Erlaube neue Tickets
gb.acceptNewTicketsDescription = Erlaube das Erstellen von Fehlerberichten, Verbesserungsvorschl\u00e4gen, Aufgaben etc.
gb.requireApproval = Explizite Freigaben erforderlich
gb.requireApprovalDescription = Patchsets m\u00fcssen freigegeben werden, bevor der Merge Button aktiviert wird
gb.topic = Thema
gb.proposalTickets = Vorgeschlagene \u00c4nderungen
gb.bugTickets = Fehler
gb.enhancementTickets = Erweiterungen
gb.taskTickets = Aufgaben
gb.questionTickets = Fragen
gb.requestTickets = Erweiterungen und Aufgaben
gb.yourCreatedTickets = Von mir erstellt
gb.yourWatchedTickets = Von mir beobachtet
gb.mentionsMeTickets = Erw\u00e4hnungen
gb.updatedBy = aktualisiert von
gb.sort = Sortierung
gb.sortNewest = Neueste
gb.sortOldest = \u00c4lteste
gb.sortMostRecentlyUpdated = K\u00fcrzlich aktualisiert
gb.sortLeastRecentlyUpdated = Am l\u00e4ngsten nicht aktualisiert
gb.sortMostComments = Die meisten Kommentare
gb.sortLeastComments = Die wenigsten Kommentare
gb.sortMostPatchsetRevisions = Die meisten Patchset Revisions
gb.sortLeastPatchsetRevisions = Die wenigsten Patchset Revisions
gb.sortMostVotes = Die meisten Stimmen
gb.sortLeastVotes = Die wenigsten Stimmen
gb.topicsAndLabels = Themen & Labels
gb.milestones = Meilensteine
gb.noMilestoneSelected = Kein Meilenstein ausgew\u00e4hlt
gb.notSpecified = nicht angegebene
gb.due = f\u00e4llig am
gb.queries = Suchanfragen
gb.searchTicketsTooltip = Suche {0} Tickets
gb.searchTickets = Search Tickets
gb.new = Neu
gb.newTicket = Neues Ticket
gb.editTicket = Bearbeite Ticket
gb.ticketsWelcome = Sie k\u00f6nnen Tickets verwenden, um Ihre Todo-Liste zu verwalten, Fehler zu diskutieren und bei der Erstellung von Patchsets zusammen zu arbeiten.
gb.createFirstTicket = Erstellen Sie Ihr erstes Ticket
gb.title = \u00dcberschrift
gb.changedStatus = hat Status ge\u00e4ndert
gb.discussion = Diskussion
gb.updated = aktualisiert
gb.proposePatchset = Patchset Vorschlagen
gb.proposePatchsetNote = Bitte schlagen Sie ein Patchset f\u00fcr dieses Ticket vor.
gb.proposeInstructions = Um zu beginnen, erstellen Sie ein Patchset und laden Sie es mit Git hoch. Gitblit verkn\u00fcpft dieses Patchset mit diesem Ticket \u00fcber die Id.
gb.proposeWith = Ein Patchset mit {0} vorschlagen
gb.revisionHistory = Revisionshistorie
gb.merge = Zusammenf\u00fchren
gb.action = Aktion
gb.patchset = Patchset
gb.all = Alle
gb.mergeBase = Merge Basis
gb.checkout = Checkout
gb.checkoutViaCommandLine =  Checkout per Kommandozeile
gb.checkoutViaCommandLineNote = Sie k\u00f6nnen diese \u00c4nderungen in Ihrem Clone des Repository per Checkout lokal testen.
gb.checkoutStep1 = Laden Sie das aktuelle Patchset \u2014 F\u00fchren Sie dies aus Ihrem lokalen Projektverzeichnis heraus aus
gb.checkoutStep2 = F\u00fchren Sie einen Checkout des Patchsets in einen neuen Branch durch und Sichten Sie die \u00c4nerungen
gb.mergingViaCommandLine = Merge per Kommandozeile
gb.mergingViaCommandLineNote = Wenn Sie den Merge Button nicht verwenden m\u00f6chten oder ein automatisches Zusammenf\u00fchren nicht durchgef\u00fchrt werden kann, dann k\u00f6nnen Sie das Zusammenf\u00fchren auch manuell auf der Kommandozeile durchf\u00fchren.
gb.mergeStep1 = Erstellen Sie einen neuen Branch um die \u00c4nderungen zu sichten \u2014 F\u00fchren Sie dies aus Ihrem lokalen Projektverzeichnis heraus aus
gb.mergeStep2 = Bringen Sie die vorgeschlagenen \u00c4nderungen ein und sichten Sie diese
gb.mergeStep3 = F\u00fchren Sie einen Merge durch und aktualisieren Sie den Server (Push)
gb.download = Herunterladen
gb.ptDescription = Das Gitblit Patchset Tool
gb.ptCheckout = Fetch & Checkout des aktuellen Patchset um ein Review des aktuellen Branch durchzuf\u00fchren
gb.ptMerge = Fetch & Merge des aktuellen Patchset in Ihren lokalen Branch
gb.ptDescription1 = Barnum ist ein Kommandozeilen-Werkzeug f\u00fcr Git um die Syntax f\u00fcr die Arbeit mit Gitblit Tickets und Patchsets zu vereinfachen.
gb.ptSimplifiedCollaboration = Vereinfachte Syntax f\u00fcr Zusammenarbeit
gb.ptSimplifiedMerge = Vereinfachte Syntax f\u00fcr das Zusammenf\u00fchren
gb.ptDescription2 = Barnum ben\u00f6tigt Python 3 und den nativen Git-Client.  Es l\u00e4uft unter Windows, Linux und Mac OS X.
gb.stepN = Schritt {0}
gb.watchers = Beobachter
gb.votes = Stimmen
gb.vote = F\u00fcr {0} Abstimmen
gb.watch = {0} beobachten
gb.removeVote = Abstimmen r\u00fcckg\u00e4ngig machen
gb.stopWatching = Beobachten beenden
gb.watching = ich beobachte
gb.comments = Kommentare
gb.addComment = Kommentar hinzuf\u00fcgen
gb.export = Exportieren
gb.oneCommit = Ein Commit
gb.nCommits = {0} Commits
gb.addedOneCommit = 1 Commit hinzugef\u00fcgt
gb.addedNCommits = {0} Commits hinzugef\u00fcgt
gb.commitsInPatchsetN = Commits im Patchset {0}
gb.patchsetN = Patchset {0}
gb.reviewedPatchsetRev = Review von Patchset {0} Revision {1} durchgef\u00fchrt: {2}
gb.review = Review
gb.reviews = Reviews
gb.veto = Abgelehnt
gb.needsImprovement = Ben\u00f6tigt Verbesserungen
gb.looksGood = Sieht gut aus
gb.approve = Akzeptiert
gb.hasNotReviewed = kein Review durchgef\u00fchrt
gb.about = \u00dcber
gb.ticketN = Ticket #{0}
gb.disableUser = Benutzer deaktivieren
gb.disableUserDescription = Verhindert das Authentifizieren dieses Benutzer
gb.any = Alle
gb.milestoneProgress = {0} offen, {1} geschlossen
gb.nOpenTickets = {0} offen
gb.nClosedTickets = {0} geschlossen
gb.nTotalTickets = {0} insgesamt
gb.body = Body
gb.mergeSha = mergeSha
gb.mergeTo = Merge mit
gb.labels = Labels
gb.reviewers = Reviewer
gb.voters = Abstimmende
gb.mentions = Erw\u00e4hnungen
gb.canNotProposePatchset = Kann kein Patchset vorschlagen
gb.repositoryIsMirror = Dieses Repository ist ein Read-Only-Mirror.
gb.repositoryIsFrozen = Dieses Repository ist eingefroren.
gb.repositoryDoesNotAcceptPatchsets = Dieses Repository akzeptiert keine Patchsets.
gb.serverDoesNotAcceptPatchsets = Dieser Server akzeptiert keine Patchsets.
gb.ticketIsClosed = Dieses Ticket ist geschlossen.
gb.mergeToDescription = Standardm\u00e4\u00dfiger Integrationsbranch f\u00fcr den Merge von Ticket Patchsets
gb.anonymousCanNotPropose = Anonyme Benutzer k\u00f6nnen keine Patchsets vorschlagen.
gb.youDoNotHaveClonePermission = Sie sind nicht berechtigt, dieses Repository zu klonen.
gb.myTickets = Meine Tickets
gb.yourAssignedTickets = Mir zugewiesen
gb.newMilestone = Neuer Meilenstein
gb.editMilestone = Meilenstein bearbeiten
gb.deleteMilestone = Meilenstein \"{0}\" l\u00f6schen?
gb.milestoneDeleteFailed = L\u00f6schen des Meilensteins ''{0}'' fehlgeschlagen!
gb.notifyChangedOpenTickets = Sende Benachrichtigungen f\u00fcr ge\u00e4nderte, offene Tickets
gb.overdue = \u00dcberf\u00e4llig
gb.openMilestones = Offene Meilensteine
gb.closedMilestones = Geschlossene Meilensteine
gb.administration = Administration
gb.plugins = Plugins
gb.extensions = Erweiterungen
gb.pleaseSelectProject = Bitte w\u00e4hlen Sie das Projekt!
gb.accessPolicy = Zugriffsrichtlinie
gb.accessPolicyDescription = W\u00e4hlen Sie eine Zugriffsrichtlinie um die Sichtbarkeit des Repositories und die Zugriffsrechte von Git zu steuern.
gb.anonymousPolicy = Anonymes Anzeigen, Klonen und Pushen
gb.anonymousPolicyDescription = Jeder kann dieses Repository sehen, klonen und zu ihm pushen.
gb.authenticatedPushPolicy = Schr\u00e4nke Pushen ein (Authentifiziert)
gb.authenticatedPushPolicyDescription = Jeder kann dieses Repository sehen und klonen. Alle authentifizierten Benutzer haben RW+ Push Berechtigung.
gb.namedPushPolicy = Schr\u00e4nke Pushen ein (Benannt)
gb.namedPushPolicyDescription = Jeder kann dieses Repository sehen und klonen. Sie bestimmen, wer pushen kann.
gb.clonePolicy = Schr\u00e4nke Klonen und Pushen ein
gb.clonePolicyDescription = Jeder kann dieses Repository sehen. Sie bestimmen, wer klonen und pushen kann.
gb.viewPolicy  = Schr\u00e4nke Anzeigen, Klonen und Pushen ein
gb.viewPolicyDescription = Sie bestimmen, wer dieses Repository anzeigen, klonen und zu ihm pushen kann.
gb.initialCommit = Initialer Commit
gb.initialCommitDescription = Dies erlaubt es Ihnen, mit <code>git clone</code> dieses Repository sofort zu klonen. \u00dcberspringen Sie diesen Schritt, falls Sie lokal bereits <code>git init</code> ausgef\u00fchrt haben.
gb.initWithReadme = README erstellen
gb.initWithReadmeDescription = Dies erstellt ein einfaches README Dokument f\u00fcr Ihr Repository.
gb.initWithGitignore = Eine .gitignore Datei erstellen
gb.initWithGitignoreDescription = Dies erstellt eine Konfigurationsdatei, die Ihren Git Client anweist, Dateien und Verzeichnisse zu ignorieren, die bestimmten Mustern entsprechen.
gb.pleaseSelectGitIgnore = Bitte w\u00e4hlen Sie eine .gitignore Datei aus
gb.receive = Empfangen
gb.permissions = Berechtigungen
gb.ownersDescription = Besitzer k\u00f6nnen alle Einstellungen des Repository ver\u00e4ndern, jedoch k\u00f6nnen Sie das Repository nur umbenennen, falls es ein pers\u00f6nliches Repository ist.
gb.userPermissionsDescription = Sie k\u00f6nnen individuelle Benutzerberechtigungen vergeben. Diese Einstellungen \u00fcbersteuern Team- oder Regexberechtigungen.
gb.teamPermissionsDescription = Sie k\u00f6nnen individuelle Teamberechtigungen vergeben. Diese Einstellungen \u00fcbersteuern Regexberechtigungen.
gb.ticketSettings = Ticketeinstellungen
gb.receiveSettings = Empfangseinstellungen
gb.receiveSettingsDescription = Die Empfangseinstellungen kontrollieren Pushes zum Repository.
gb.preReceiveDescription = Pre-Empfangs-Hooks werden ausgef\u00fchrt nachdem alle Commits empfangen wurden, aber <em>BEVOR</em> die Refs aktualisiert werden. <p>Dies ist der geeignete Hook, um einen Push abzulehnen.</p>
gb.postReceiveDescription = Post-Empfangs-Hooks werden ausgef\u00fchrt, nachdem alle Commits empfangen wurden und <em>NACHDEM</em> die Refs aktualisiert wurden. <p>Dies ist der geeignete Hook f\u00fcr Benachrichtigungen, Build-Trigger, etc.</p>
gb.federationStrategyDescription = Bestimmen Sie, ob und wie dieses Repository mit einer anderen Gitblit Instanz verbunden werden kann (Federation).
gb.federationSetsDescription = Dieses Repository wird in den ausgew\u00e4hlten Verbindungssets enthalten sein.
gb.miscellaneous = Sonstiges
gb.originDescription = Die URL, von welcher dieses Repository geklont wurde.
gb.gc = GC
gb.garbageCollection = Garbage Collection
gb.garbageCollectionDescription = Die Garbage Collection b\u00fcndelt freie Objekte, welche von Clients gepusht wurden und entfernt nicht mehr referenzierte Objekte aus dem Repository.
gb.commitMessageRendererDescription = Commit Messages k\u00f6nnen als reiner Text oder gerendertes Markup dargestellt werden.
gb.preferences = Einstellungen
gb.accountPreferences = Kontoeinstellungen
gb.accountPreferencesDescription = Geben Sie Ihre Kontoeinstellungen an
gb.languagePreference = Spracheinstellungen
gb.languagePreferenceDescription = W\u00e4hlen Sie Ihre bevorzugte \u00dcbersetzung f\u00fcr Gitblit
gb.emailMeOnMyTicketChanges = Sende Emails bei eigenen \u00c4nderungen an Tickets
gb.emailMeOnMyTicketChangesDescription  = Sende mir Email-Benachrichtigungen f\u00fcr \u00c4nderungen, die ich an einem Ticket vornehme
gb.displayNameDescription = Bevorzugter Anzeigename
gb.emailAddressDescription = Die prim\u00e4re Emailadresse f\u00fcr den Empfang von Benachrichtigungen
gb.sshKeys = SSH Keys
gb.sshKeysDescription = SSH Public Key Authentifizierung ist eine sichere Alternative zur Authentifizierung mit Passwort
gb.addSshKey = SSH Key hinzuf\u00fcgen
gb.key = Key
gb.comment = Kommentar
gb.sshKeyCommentDescription = Geben Sie optional einen Kommentar ein. Falls Sie dies nicht tun, wird der Kommentar aus dem Key extrahiert.
gb.permission = Berechtigung
gb.sshKeyPermissionDescription = Geben Sie die Zugriffberechtigung f\u00fcr den SSH Key an
gb.transportPreference = \u00dcbertragungseinstellungen
gb.transportPreferenceDescription = Geben Sie die \u00dcbertragungsart an, die Sie f\u00fcr das Klonen bevorzugen
src/main/java/com/gitblit/wicket/GitBlitWebApp_it.properties
New file
@@ -0,0 +1,745 @@
gb.repository = repository
gb.owner = proprietario
gb.description = descrizione
gb.lastChange = ultima modifica
gb.refs = refs
gb.tag = tag
gb.tags = tags
gb.author = autore
gb.committer = committer
gb.commit = commit
gb.age = età
gb.tree = albero
gb.parent = padre
gb.url = URL
gb.history = cronologia
gb.raw = originale
gb.object = oggetto
gb.ticketId = id del ticket
gb.ticketAssigned = assegnato
gb.ticketOpenDate = data di apertura
gb.ticketStatus = stato
gb.ticketComments = commenti
gb.view = vista
gb.local = locale
gb.remote = remoto
gb.branches = rami
gb.patch = patch
gb.diff = differenze
gb.log = log
gb.moreLogs = ulteriori commits...
gb.allTags = tutte le tags...
gb.allBranches = tutti i rami...
gb.summary = riassunto
gb.ticket = ticket
gb.newRepository = nuovo repository
gb.newUser = nuovo utente
gb.commitdiff = differenze di commit
gb.tickets = elenco ticket
gb.pageFirst = prima
gb.pagePrevious = prec
gb.pageNext = succ
gb.head = HEAD
gb.blame = annotazioni
gb.login = login
gb.logout = logout
gb.username = nome utente
gb.password = password
gb.tagger = autore della tag
gb.moreHistory =  ulteriore cronoligia...
gb.difftocurrent = differenze con il corrente
gb.search = ricerca
gb.searchForAuthor = Ricerca commit per autore
gb.searchForCommitter = Ricerca commit per committer
gb.addition = aggiunta
gb.modification = modifica
gb.deletion = cancellazione
gb.rename = rinomina
gb.metrics = metriche
gb.stats = statistiche
gb.markdown = markdown
gb.changedFiles = file modificati
gb.filesAdded = {0} file aggiunti
gb.filesModified = {0} file modificati
gb.filesDeleted = {0} file cancellati
gb.filesCopied = {0} file copiati
gb.filesRenamed = {0} file rinominati
gb.missingUsername = Nome Utente Mancante
gb.edit = modifica
gb.searchTypeTooltip = Seleziona tipo di ricerca
gb.searchTooltip = Ricerca {0}
gb.delete = cancella
gb.docs = documentazione
gb.accessRestriction = restrizioni di accesso
gb.name = nome
gb.enableTickets = abilita supporto ticket
gb.enableDocs = abilita documentazione
gb.save = salva
gb.showRemoteBranches = mostra i rami remoti
gb.editUsers = modifica utenti
gb.confirmPassword = conferma password
gb.restrictedRepositories = repository con restrizioni di accesso
gb.canAdmin = controllo completo
gb.notRestricted = visualizzazione, clone e push anonimi
gb.pushRestricted = push previa autenticazione
gb.cloneRestricted = clone e push previa autenticazione
gb.viewRestricted = visualizzazione, clone e push previa autenticazione
gb.useTicketsDescription = segnalazioni Ticgit distribuite (sola lettura)
gb.useDocsDescription = elenca la documentazione Markdown nel repository
gb.showRemoteBranchesDescription = mostra rami remoti
gb.canAdminDescription = può amministrare il server Gitblit
gb.permittedUsers = utenti autorizzati
gb.isFrozen = sola lettura
gb.isFrozenDescription = operazioni di push vietate
gb.zip = zip
gb.showReadme = mostra readme
gb.showReadmeDescription = mostra un file \"readme\" in formato Markdown nella pagina riassuntiva
gb.nameDescription = utilizza '/' per raggruppare i repository.  p.e. libraries/mycoollib.git
gb.ownerDescription = il proprietario può modificare le impostazioni del repository
gb.blob = blob
gb.commitActivityTrend = tendenza dell'attività di commit
gb.commitActivityDOW = commit per giorno della settimana
gb.commitActivityAuthors = autori principali sulla base dei commit
gb.feed = feed
gb.cancel = annulla
gb.changePassword = cambia password
gb.isFederated = federato
gb.federateThis = attiva federazione su questo repository
gb.federateOrigin = attiva federazione su origin
gb.excludeFromFederation = escludi dalla federazione
gb.excludeFromFederationDescription = impedisci a istanze federate di Gitblit di effettuare il pull su questo utente
gb.tokens = gettoni di federazione
gb.tokenAllDescription = tutti i repository, utenti e impostazioni
gb.tokenUnrDescription = tutti i repository e gli utenti
gb.tokenJurDescription = tutti i repository
gb.federatedRepositoryDefinitions = definizione dei repository
gb.federatedUserDefinitions = definizione degli utenti
gb.federatedSettingDefinitions = definizione delle impostazioni
gb.proposals = proposta di federazione
gb.received = ricevuta
gb.type = tipo
gb.token = gettone
gb.repositories = repository
gb.proposal = proposta
gb.frequency = frequenza
gb.folder = cartella
gb.lastPull = ultimo pull
gb.nextPull = prossimo pull
gb.inclusions = inclusioni
gb.exclusions = esclusioni
gb.registration = registrazione
gb.registrations = registrationi di federazione
gb.sendProposal = proponi
gb.status = stato
gb.origin = origin
gb.headRef = ramo predefinito (HEAD)
gb.headRefDescription = Il ramo predefinito soggetto a clone e visualizzato nella pagina riassuntiva
gb.federationStrategy = strategia di federazione
gb.federationRegistration = registrazione di federazione
gb.federationResults = risultati di pull federato
gb.federationSets = insiemi di federazione
gb.message = messaggio
gb.myUrlDescription = URL pubblico alla tua istanza Gitblit
gb.destinationUrl = invia a
gb.destinationUrlDescription = URL dell'istanza Gitblit a cui inviare la proposta
gb.users = utenti
gb.federation = federazione
gb.error = errore
gb.refresh = aggiorna
gb.browse = sfoglia
gb.clone = clona
gb.filter = filtra
gb.create = crea
gb.servers = server
gb.recent = recenti
gb.available = disponibile
gb.selected = selezionato
gb.size = dimensione
gb.downloading = download in corso
gb.loading = caricamento
gb.starting = avvio
gb.general = generale
gb.settings = impostazioni
gb.manage = gestisci
gb.lastLogin = ultimo login
gb.skipSizeCalculation = non computare le dimensioni
gb.skipSizeCalculationDescription = disabilita la computazione delle dimensioni del repository (velocizza caricamento pagine)
gb.skipSummaryMetrics = ometti il riassunto delle metriche
gb.skipSummaryMetricsDescription = non calcolare le metriche nella pagina riassuntiva (velocizza caricamento pagine)
gb.accessLevel = livello di access
gb.default = predefinito
gb.setDefault = imposta predefinito
gb.since = da
gb.status = stato
gb.bootDate = data di avvio del server
gb.servletContainer = servlet container
gb.heapMaximum = memoria massima
gb.heapAllocated = memoria allocata
gb.heapUsed = memoria utilizzata
gb.free = libero
gb.version = versione
gb.releaseDate = data di rilascio
gb.date = data
gb.activity = attività
gb.subscribe = sottoscrivi
gb.branch = ramo
gb.maxHits = max hits
gb.recentActivity = attività recenti
gb.recentActivityStats = ultimi {0} giorni / {1} commit da {2} autori
gb.recentActivityNone = ultimi {0} giorni / nessuno
gb.dailyActivity = attività giornaliera
gb.activeRepositories = repository attivi
gb.activeAuthors = autori attivi
gb.commits = commit
gb.teams = gruppi
gb.teamName = nome del gruppo
gb.teamMembers = membry del gruppo
gb.teamMemberships = appartenenza al gruppo
gb.newTeam = nuovo gruppo
gb.permittedTeams = gruppi autorizzati
gb.emptyRepository = repository vuoto
gb.repositoryUrl = repository URL
gb.mailingLists = liste di corrispondenza
gb.preReceiveScripts = script eseguiti su pre-receive
gb.postReceiveScripts = script eseguiti su post-receive
gb.hookScripts = script eseguiti su hook di git
gb.customFields = campi peronalizzati
gb.customFieldsDescription = campi personalizzati accessibili a hook scritti in Groovy
gb.accessPermissions = permessi di accesso
gb.filters = filtri
gb.generalDescription = impostazioni comuni
gb.accessPermissionsDescription = riduci l'accesso in base a utenti e gruppi
gb.accessPermissionsForUserDescription = imposta appartenenza a un gruppo o abilita accesso a repository soggetti a restrizioni
gb.accessPermissionsForTeamDescription = imposta i membri di un gruppo e abilita accesso a repository soggetti a restrizioni
gb.federationRepositoryDescription = condividi questo repository con altre istanze Gitblit
gb.hookScriptsDescription = esegue script Groovy quando viene effettuato un push su questo server
gb.reset = reimposta
gb.pages = pagine
gb.workingCopy = copia di lavoro
gb.workingCopyWarning = questo repository è una copia di lavoro a non ammette push
gb.query = interrogazione
gb.queryHelp = La sintassi standard è supportata.<p/><p/>Si vedi <a target="_new" href="http://lucene.apache.org/core/old_versioned_docs/versions/3_5_0/queryparsersyntax.html">Lucene Query Parser Syntax</a> per ulteriori dettagli.
gb.queryResults = risultati {0} - {1} ({2} corrispondenze)
gb.noHits = nessuna corrispondenza
gb.authored = creato da
gb.committed = commit di
gb.indexedBranches = Rami Indicizzati
gb.indexedBranchesDescription = Seleziona i rami che devono essere indicizzati tramite Lucene
gb.noIndexedRepositoriesWarning = nessun repository è soggetto a indicizzazione Lucene
gb.undefinedQueryWarning = interrogazione non specificata!
gb.noSelectedRepositoriesWarning = per favore specifica uno o più repository!
gb.luceneDisabled = Indicizzazione tramite Lucene disabilitata
gb.failedtoRead = Errore di lettura
gb.isNotValidFile = non è un file valido
gb.failedToReadMessage = Errore nella lettura del messaggio da {0}!
gb.passwordsDoNotMatch = La password non corissponde!
gb.passwordTooShort = La password è troppo corta. La lunghezza minima è {0} caratteri.
gb.passwordChanged = Password modificata con successo.
gb.passwordChangeAborted = Modifica della password annullata.
gb.pleaseSetRepositoryName = Specificare il nome del repository!
gb.illegalLeadingSlash = Riferiementi alla cartella principale (/) non sono ammessi.
gb.illegalRelativeSlash = Riferimenti relativi a cartelle (../) non sono ammessi.
gb.illegalCharacterRepositoryName = Carattere non consetito ''{0}'' nel nome del repository!
gb.selectAccessRestriction = Restrizioni di accesso non specificate!
gb.selectFederationStrategy = Strategia di federazione non selezionata!
gb.pleaseSetTeamName = Nome del gruppo non specificato!
gb.teamNameUnavailable = Il nome di gruppo ''{0}'' non è disponibile.
gb.teamMustSpecifyRepository = Un gruppo deve specificare almeno un repository.
gb.teamCreated = Nuovo gruppo ''{0}'' creato con successo.
gb.pleaseSetUsername = Nome utente non specificato!
gb.usernameUnavailable = Il nome utente ''{0}'' non è disponibile.
gb.combinedMd5Rename = Gitblit è configurato per effettuare un hashing delle password di tipo combinato-md5. E' quindi necessario specificare una nuova password quando si rinomina un utenza.
gb.userCreated = Nuovo utente ''{0}'' creato con successo.
gb.couldNotFindFederationRegistration = Impossibile trovare la registrazione di federazione!
gb.failedToFindGravatarProfile = Profilo Gravatar per {0} non reperito!
gb.branchStats = {2} contiene {0} commit e {1} tag
gb.repositoryNotSpecified = Repository non specificato!
gb.repositoryNotSpecifiedFor = Repository non specificato per {0}!
gb.canNotLoadRepository = Impossibile leggere il repository
gb.commitIsNull = Commit nullo
gb.unauthorizedAccessForRepository = Accesso al repository non autorizzato
gb.failedToFindCommit = Cmmit \"{0}\" non trovato in {1}!
gb.couldNotFindFederationProposal = Impossibile trovare la proposta di federazione!
gb.invalidUsernameOrPassword = Nome utente o password non validi!
gb.OneProposalToReview = 1 proposta di federazione è in attesa di valutazione.
gb.nFederationProposalsToReview = Ci sono {0} proposte di federazione in attesa di valutazione
gb.couldNotFindTag = Tag non trovata {0}
gb.couldNotCreateFederationProposal = Impossibile creare proposta di federazione!
gb.pleaseSetGitblitUrl = Gitblit URL non specificato!
gb.pleaseSetDestinationUrl = URL di destinazione non specificato!
gb.proposalReceived = Proposta ricevuta da {0} con successo.
gb.noGitblitFound = {0} non ha potuto trovare una istanza di Gitblit presso {1}.
gb.noProposals = {0} al momento non accetta proposte.
gb.noFederation = {0} non è configurato per creare una federazione con altre istanze Gitblit.
gb.proposalFailed = {0} non ha ricevuto alcuna proposta di federazione!
gb.proposalError = {0} segnala un errore inatteso!
gb.failedToSendProposal = Invio proposta fallito!
gb.userServiceDoesNotPermitAddUser = {0} non consete di aggiungere nuovi utenti!
gb.userServiceDoesNotPermitPasswordChanges = {0} non consente di cambiare la password!
gb.displayName = nome pubblico
gb.emailAddress = indirizzo email
gb.errorAdminLoginRequired = Effettuare l'accesso per utilizzare le funzioni amministrative
gb.errorOnlyAdminMayCreateRepository = Solo un utente amministratore può creare repository
gb.errorOnlyAdminOrOwnerMayEditRepository = Solo un utente amministratore e il proprietario possono modificare un repository
gb.errorAdministrationDisabled = Funzioni amministrative disabilitate
gb.lastNDays = Ultimi {0} giorni
gb.completeGravatarProfile = Completa il profilo su Gravatar.com
gb.none = nessuno
gb.line = linea
gb.content = contenuto
gb.empty = vuoto
gb.inherited = ereditato
gb.deleteRepository = Cancellare il repository \"{0}\"?
gb.repositoryDeleted = Repository ''{0}'' cancellato.
gb.repositoryDeleteFailed = Impossible cancellare il repository ''{0}''!
gb.deleteUser = Cancellare l'utente \"{0}\"?
gb.userDeleted = Utente ''{0}'' cancellato.
gb.userDeleteFailed = Impossibile cancellare l'utente ''{0}''!
gb.time.justNow = in questo istante
gb.time.today = oggi
gb.time.yesterday = ieri
gb.time.minsAgo = {0} minuti fa
gb.time.hoursAgo = {0} ore fa
gb.time.daysAgo = {0} giorni fa
gb.time.weeksAgo = {0} settimane fa
gb.time.monthsAgo = {0} mese fa
gb.time.oneYearAgo = 1 anno fa
gb.time.yearsAgo = {0} anni fa
gb.duration.oneDay = 1 giorno
gb.duration.days = {0} giorni
gb.duration.oneMonth = 1 mese
gb.duration.months = {0} mesi
gb.duration.oneYear = 1 anno
gb.duration.years = {0} anni
gb.authorizationControl = Controlli di autorizzazine
gb.allowAuthenticatedDescription = Consenti lettura/scrittura a tutti gli utenti registrati
gb.allowNamedDescription = Configura permessi specifici per utenti e gruppi
gb.markdownFailure = Impossibile leggere contenuto Markdown!
gb.clearCache = pulisci la cache
gb.projects = progetti
gb.project = progetto
gb.allProjects = tutti i progetti
gb.copyToClipboard = copia negli appunti
gb.fork = ramificazione
gb.forks = ramificazioni
gb.forkRepository = crea una ramificazione {0}?
gb.repositoryForked = ramificazione creata per {0}
gb.repositoryForkFailed= ramificazione fallita
gb.personalRepositories = repository personali
gb.allowForks = consenti ramificazioni
gb.allowForksDescription = consenti agli utenti autorizzati di creare ramificazioni di questo repository
gb.forkedFrom = ramificazione di
gb.canFork = creare ramificazioni
gb.canForkDescription = può creare una ramificazione personale a partire da un repository cui ha accesso
gb.myFork = vedere le mie ramificazioni
gb.forksProhibited = ramificazioni vietate
gb.forksProhibitedWarning = questo repository non ammette ramificazioni
gb.noForks = {0} non ha ramificazioni
gb.forkNotAuthorized = non sei autorizzato a crare una ramificazione di {0}
gb.forkInProgress = ramificazione in corso
gb.preparingFork = ramificazione in preparazione...
gb.isFork = è una ramificazione
gb.canCreate = può creare
gb.canCreateDescription = può creare repository personali
gb.illegalPersonalRepositoryLocation = i tuoi repository personali devono trovarsi \"{0}\"
gb.verifyCommitter = verifica committer
gb.verifyCommitterDescription = controlla che l'identità del committer corrisponda all'utente Gitblit di push
gb.verifyCommitterNote = tutti i merge richiedono "--no-ff" per verificare l'identità del committer
gb.repositoryPermissions = permessi di repository
gb.userPermissions = permessi di utente
gb.teamPermissions = permessi di gruppo
gb.add = aggiungi
gb.noPermission = CANCELLA QUESTO PERMESSO
gb.excludePermission = {0} (esclude)
gb.viewPermission = {0} (visualizza)
gb.clonePermission = {0} (clone)
gb.pushPermission = {0} (push)
gb.createPermission = {0} (push, crea refs)
gb.deletePermission = {0} (push, crea e cancella refs)
gb.rewindPermission = {0} (push, crea cancella e riavvolge ref)
gb.permission = permesso
gb.regexPermission = questo permesso è assegnato tramite espressione regolare \"{0}\"
gb.accessDenied = accesso negato
gb.busyCollectingGarbage = Gitblit sta eseguendo manutenzione su {0}
gb.gcPeriod = Intervallo di GC
gb.gcPeriodDescription = Intervallo di tempo tra un GC e il successivo
gb.gcThreshold = soglia di GC
gb.gcThresholdDescription = soglia minima di oggetti eliminabili che innesca un GC (garbage collection) anticipato
gb.ownerPermission = proprietario del repository
gb.administrator = amministratore
gb.administratorPermission = amministratore di Gitblit
gb.team = gruppo
gb.teamPermission = permesso ottenuto attraverso l'appartenenza al gruppo \"{0}\"
gb.missing = mancante!
gb.missingPermission = il repository per questo permesso è mancante!
gb.mutable = mutabile
gb.specified = specificato
gb.effective = effettivo
gb.organizationalUnit = unità organizzativa
gb.organization = organizzazione
gb.locality = località
gb.stateProvince = stato o provincia
gb.countryCode = codice nazione
gb.properties = proprietà
gb.issued = segnalato
gb.expires = scade
gb.expired = scaduto
gb.expiring = in scadenza
gb.revoked = revocato
gb.serialNumber = numero di serie
gb.certificates = certificati
gb.newCertificate = nuovo certificato
gb.revokeCertificate = revoca certificato
gb.sendEmail = spedisci email
gb.passwordHint = domanda di sicurezza
gb.ok = ok
gb.invalidExpirationDate = data di scadenza invalida!
gb.passwordHintRequired = la domanda di sicurezza è obbligatoria!
gb.viewCertificate = vedi certificato
gb.subject = soggetto
gb.issuer = emesso da
gb.validFrom = valid dal
gb.validUntil = valido fino al
gb.publicKey = chiave pubblica
gb.signatureAlgorithm = algoritml di firma
gb.sha1FingerPrint = firma SHA-1
gb.md5FingerPrint = firma MD5
gb.reason = motivazione
gb.revokeCertificateReason = Per favore selezionare una motivazione per la revoca del certificato
gb.unspecified = non specificata
gb.keyCompromise = chiave compromessa
gb.caCompromise = CA compromessa
gb.affiliationChanged = cambio di affiliazione
gb.superseded = obsoleto
gb.cessationOfOperation = cessata attività
gb.privilegeWithdrawn = privilegio rimosso
gb.time.inMinutes = in {0} minuti
gb.time.inHours = in {0} ore
gb.time.inDays = in {0} giorni
gb.hostname = nome host
gb.hostnameRequired = Per favore specificare un nome host
gb.newSSLCertificate = nuovo certificato SSL per il server
gb.newCertificateDefaults = nuovi valori predefiniti del certificato
gb.duration = durata
gb.certificateRevoked = Il certificato {0,number,0} è stato revocato
gb.clientCertificateGenerated = Nuovo certificato client generato con successo per {0}
gb.sslCertificateGenerated = Nuovo certificato SSL server generato con successo per {0}
gb.newClientCertificateMessage = NOTA:\nLa 'password' non è la password dell'utente, bensì la password per il portachiavi (keystore). Questa password non è salvata, perciò è necessario specificare una domanda di sicurezza che sarà inclusa nelle istruzioni per l'utente (README)
gb.certificate = certificato
gb.emailCertificateBundle = invia in email il pacchetto del certificato
gb.pleaseGenerateClientCertificate = Per favore generare un certificato client per {0}
gb.clientCertificateBundleSent = Il pacchetto contente il certificato client per {0} è stato spedito
gb.enterKeystorePassword = Per favore digita la password per il portachiavi di Gitblit (keystore)
gb.warning = attenzione
gb.jceWarning = Il runtime Java in use non contiene i files \"JCE Unlimited Strength Jurisdiction Policy\".\nQuesto limita la lunghezza della password del portachiavi a 7 caratteri.\nI file mancanti possono essere scaricati dal sito Oracle.\n\nVuoi continuare e generare il certificato comunque?\n\nSe rispondi No il tuo browser verrà redirezionato alla pagina di download di Oracle.
gb.maxActivityCommits = numero di commit nella pagina attività
gb.maxActivityCommitsDescription = numero massimo di commit da visualizzare nella pagina attività
gb.noMaximum = nessun limite
gb.attributes = attributi
gb.serveCertificate = utilizza questo certificato per HTTPS
gb.sslCertificateGeneratedRestart = Certificato SSL server generato con successo per {0}.\nE' necessario riavviare Gitblit per utilizzare il nuovo certificato.\n\nSe l'applicazione à avviata con il parametro '--alias', sarà necesario impostare tale parametro a ''--alias {0}''.
gb.validity = validità
gb.siteName = nome del sito
gb.siteNameDescription = nome breve del server
gb.excludeFromActivity = escludi dalla pagina riassuntiva delle attività
gb.isSparkleshared = il repository si trova una cartella Sparkleshare
gb.owners = proprietari
gb.sessionEnded = La sessione è terminata
gb.closeBrowser = Chiudere il browser per terminare correttamente la sessione.
gb.doesNotExistInTree = {0} non esiste nell'albero {1}
gb.enableIncrementalPushTags = abilita push incrementale di tag
gb.useIncrementalPushTagsDescription = A seguito di un push, crea automaticamente una etichetta in cima ad ogni ramificazione utilizzando un numero incrementale
gb.incrementalPushTagMessage = Nuova auto-etichetta su ramificazione [{0}] a seguito di push
gb.externalPermissions = {0} i permessi di accesso sono gestiti su un sistema esterno
gb.viewAccess = Non hai accesso in lettura o scrittura su Gitblit
gb.overview = riassunto
gb.dashboard = cruscotto
gb.monthlyActivity = attività mensile
gb.myProfile = il mio profilo
gb.compare = confronta
gb.manual = manuale
gb.from = da
gb.to = a
gb.at = al
gb.of = di
gb.in = in
gb.moreChanges = tutti i cambiamenti...
gb.pushedNCommitsTo = ha effettuato il push di {0} nuovi commit
gb.pushedOneCommitTo = ha effettuato il push di 1 nuovo commit
gb.commitsTo = {0} crea commits su
gb.oneCommitTo = 1 commit su
gb.byNAuthors = da {0} authori
gb.byOneAuthor = da {0}
gb.viewComparison = confronta qeusti {0} commit \u00bb
gb.nMoreCommits = {0} altri commit \u00bb
gb.oneMoreCommit = 1 altro commit \u00bb
gb.pushedNewTag = ha effettuato il push di una nuova tag
gb.createdNewTag = ha creato una nuova tag
gb.deletedTag = ha cancellato una tag
gb.pushedNewBranch = ha effettuato il push di una ramificazione
gb.createdNewBranch = ha creato una nuova ramificazione
gb.deletedBranch = ha cancellato una ramificazione
gb.createdNewPullRequest = ha creato una richiesta di pull
gb.mergedPullRequest = ha eseguito il merge di una richiesta di pull
gb.rewind = RIAVVOLGERE
gb.star = aggiungi stella
gb.unstar = togli stella
gb.stargazers = astronomi
gb.starredRepositories = repository stellati
gb.failedToUpdateUser = Aggiornamento utente fallito!
gb.myRepositories = I miei repository
gb.noActivity = nessuna attività negli ultimi {0} giorni
gb.findSomeRepositories = trova repository
gb.metricAuthorExclusions = Esclusione autori dalle metriche
gb.myDashboard = il mio cruscotto
gb.failedToFindAccount = utente non trovato ''{0}''
gb.reflog = reflog
gb.active = attivo
gb.starred = stellato
gb.owned = posseduto
gb.starredAndOwned = stellato e posseduto
gb.reviewPatchset = revisione di {0} insiemi di patch {1}
gb.todaysActivityStats = oggi / {1} commit da {2} autori
gb.todaysActivityNone = oggi / nessuno
gb.noActivityToday = nessuna attività oggi
gb.anonymousUser= anonimo
gb.commitMessageRenderer = visualizzatore messaggio di commit
gb.diffStat = {0} aggiunte & {1} cancellazioni
gb.home = home
gb.isMirror = questo repository è uno specchio
gb.mirrorOf = specchio di {0}
gb.mirrorWarning = questo repository è uno specchio e non ammette push
gb.docsWelcome1 = Puoi usare file per documentare il tuo repository
gb.docsWelcome2 = Crea un file README.md o HOME.md per cominciare.
gb.createReadme = crea un README
gb.responsible = responsabile
gb.createdThisTicket = ha creato questo ticket
gb.proposedThisChange = ha proposto questo cambiamento
gb.uploadedPatchsetN = ha fatto l'upload di una patch {0}
gb.uploadedPatchsetNRevisionN = ha aggiornato la patch {0} alla revisione {1}
gb.mergedPatchset = ha effettuato il merge di una patch
gb.commented = ha commentato
gb.noDescriptionGiven = nessuna descrizione
gb.toBranch = a {0}
gb.createdBy = creato da
gb.oneParticipant = {0} partecipante
gb.nParticipants = {0} partecipanti
gb.noComments = nessun comment
gb.oneComment = {0} commento
gb.nComments = {0} commenti
gb.oneAttachment  = {0} allegato
gb.nAttachments = {0} allegati
gb.milestone = milestone
gb.compareToMergeBase = confronta con la base di merge
gb.compareToN = confronta con {0}
gb.open = aperto
gb.closed = chiuso
gb.merged = merge effettuato
gb.ticketPatchset = ticket {0}, patch {1}
gb.patchsetMergeable = Questa patch può essere sottoposta a merge automatico con {0}.
gb.patchsetMergeableMore = Questa patch può anche sottoposta a merge con {0} dalla riga di comando.
gb.patchsetAlreadyMerged = Questa patch è stata sottoposta a merge con {0}.
gb.patchsetNotMergeable = Non è possibile effettuare il merge automatico di questa patch con {0}.
gb.patchsetNotMergeableMore = Questa patch necessita di rebase o merge manuale con {0} per risolvere i conflitti.
gb.patchsetNotApproved = La revisione di questa patch non à stata approvata per il merge con {0}.
gb.patchsetNotApprovedMore = Questa patch richiede approvazione da parte di un revisore.
gb.patchsetVetoedMore = Un revisore ha rifiutato questa patch.
gb.write = scrittura
gb.comment = commento
gb.preview = anteprima
gb.leaveComment = lascia un commento...
gb.showHideDetails = mostra/nascondi dettagli
gb.acceptNewPatchsets = accetta patch
gb.acceptNewPatchsetsDescription = accetta patch per questo repository
gb.acceptNewTickets = consenti nuovi ticket
gb.acceptNewTicketsDescription = consente la creazione di ticket per difetti, migliorie, attività, etc
gb.requireApproval = approvazione richiesta
gb.requireApprovalDescription = le patch devono essere approvate affinchè il bottone merge venga abilitato
gb.topic = argomento
gb.proposalTickets = cambiamenti proposti
gb.bugTickets = difetti
gb.enhancementTickets = migliorie
gb.taskTickets = attività
gb.questionTickets = domande
gb.requestTickets = migliorie e attività
gb.yourCreatedTickets = create da te
gb.yourWatchedTickets = osservate da te
gb.mentionsMeTickets = in cui sei menzionato
gb.updatedBy = aggiornate da
gb.sort = ordina
gb.sortNewest = più nuovi
gb.sortOldest = più vecchi
gb.sortMostRecentlyUpdated = aggiornati più di recente
gb.sortLeastRecentlyUpdated = aggiornati meno di recente
gb.sortMostComments = più commenti
gb.sortLeastComments = meno commenti
gb.sortMostPatchsetRevisions = patch con più revisioni
gb.sortLeastPatchsetRevisions = patch con meno revisioni
gb.sortMostVotes = più votati
gb.sortLeastVotes = meno votati
gb.topicsAndLabels = argomenti ed etichette
gb.milestones = milestone
gb.noMilestoneSelected = nessuna milestone selezionata
gb.notSpecified = non specificato
gb.due = entro
gb.queries = interrogazioni
gb.searchTicketsTooltip = ricerca {0} ticket
gb.searchTickets = ricerca ticket
gb.new = nuovo
gb.newTicket = nuovo ticket
gb.editTicket = modifica ticket
gb.ticketsWelcome = Puoi usare i ticket per creare una lista di cose da fare, discutere i difetti o collaborare su patch.
gb.createFirstTicket = Crea il tuo primo ticket
gb.title = Titolo
gb.changedStatus = ha cambibato lo stato
gb.discussion = discussione
gb.updated = aggiornato
gb.proposePatchset = proponi una patch
gb.proposePatchsetNote = Sei il benvenuto nel proporre una patch per questo ticket.
gb.proposeInstructions = Per iniziare, crea una patch e fanne l'upload con Git. Gitblit collegerà la tua patch a questo ticket per id.
gb.proposeWith = Proponi una  patch con {0}
gb.revisionHistory = cronologia revisioni
gb.merge = merge
gb.action = azione
gb.patchset = patch
gb.all = all
gb.mergeBase = base di merge
gb.checkout = checkout
gb.checkoutViaCommandLine =  Checkout da riga di comando
gb.checkoutViaCommandLineNote = Puoi effettuare il checkout e testare questi cambiamenti localmente tramite il tuo clone di questo repository.
gb.checkoutStep1 = Esegui il fetch della patch corrente \u2014 esegui questo dalla tua cartella di progetto
gb.checkoutStep2 = Esegui il checkout della patch in una nuova ramificazione e revisione
gb.mergingViaCommandLine = Esecuzione del merge via command line
gb.mergingViaCommandLineNote = Se non vuoi utilizzare il bottone di merge, oppure il merge automatico non è possibile, puoi eseguire il merge manuale da riga di comando.
gb.mergeStep1 = Esegui il checkout di un nuovo branch per esaminare i cambiamenti \u2014 esegui questo dalla tua cartella di progetto
gb.mergeStep2 = Apporta i cambiamenti proposti ed esegui la revisione
gb.mergeStep3 = Effettua il merge dei cambiamenti proposti e poi aggiorna il server
gb.download = download
gb.ptDescription = strumento di Gitblit per le patch
gb.ptCheckout = Esegui il fetch e il checkout della patch corrente in una nuova ramificazione per la revisione
gb.ptMerge = Esegui il fetch e il checkout della patch corrente in una tua ramificazione locale
gb.ptDescription1 = Barnum è un accessorio a riga di comando per Git che semplifica la sintassi per lavorare con i ticket Gitblit e le patch
gb.ptSimplifiedCollaboration = sintassi semplificata di collaborazione
gb.ptSimplifiedMerge = sintassi semplificata di merge
gb.ptDescription2 = Barnum richiede Python 3 e il client Git nativo. Funziona su Windows, Linux, and Mac OS X.
gb.stepN = Passo {0}
gb.watchers = osservatori
gb.votes = voti
gb.vote = vota per questo {0}
gb.watch = osserva questo {0}
gb.removeVote = annulla voto
gb.stopWatching = non osservare più
gb.watching = osservati
gb.comments = commenti
gb.addComment = aggiungi un commento
gb.export = esporta
gb.oneCommit = un commit
gb.nCommits = {0} commit
gb.addedOneCommit = aggiunto 1 commit
gb.addedNCommits = aggiunti {0} commit
gb.commitsInPatchsetN = commit nella pactch {0}
gb.patchsetN = patch {0}
gb.reviewedPatchsetRev = patch analizzata {0} revisione {1}: {2}
gb.review = revisione
gb.reviews = revisioni
gb.veto = veto
gb.needsImprovement = da migliorare
gb.looksGood = sembra buona
gb.approve = approvata
gb.hasNotReviewed = non analizzata
gb.about = a proposito di
gb.ticketN = ticket #{0}
gb.disableUser = disabilita utente
gb.disableUserDescription = blocca l'utente impedendone l'autenticazione
gb.any = qualsiasi
gb.milestoneProgress = {0} aperti, {1} chiusi
gb.nOpenTickets = {0} aperti
gb.nClosedTickets = {0} chiusi
gb.nTotalTickets = {0} totali
gb.body = corpo
gb.mergeSha = SHA del merge
gb.mergeTo = merge con
gb.labels = etichette
gb.reviewers = revisori
gb.voters = votanti
gb.mentions = menzioni
gb.canNotProposePatchset = patch non accettate
gb.repositoryIsMirror = Questo repository è uno specchio di sola lettura.
gb.repositoryIsFrozen = Questo repository è congelato.
gb.repositoryDoesNotAcceptPatchsets = Questo repository non ammette patch.
gb.serverDoesNotAcceptPatchsets = Questo server non ammette patch.
gb.ticketIsClosed = Questo ticket è chiuso.
gb.mergeToDescription = ramificazione di integrazione per il merge di patch per ticket
gb.anonymousCanNotPropose = Utenti anonimi non possono proporre patch.
gb.youDoNotHaveClonePermission = Non hai i diritti per effettuare il clone di questo repository.
gb.myTickets = i miei ticket
gb.yourAssignedTickets = assegnati a te
gb.newMilestone = nuova milestone
gb.editMilestone = modifica milestone
gb.deleteMilestone = Cancella milestone \"{0}\"?
gb.milestoneDeleteFailed = Cancellazione di milestone fallita ''{0}''!
gb.notifyChangedOpenTickets = invia notifiche per cambiamenti su ticket aperti
gb.overdue = oltre il termine
gb.openMilestones = milestone aperte
gb.closedMilestones = milestone chiuse
gb.administration = amministrazione
gb.plugins = plugins
gb.extensions = estensioni
gb.pleaseSelectProject = Per favore seleziona il progetto!
gb.accessPolicy = Politica di accesso
gb.accessPolicyDescription = Scegli una politica di accesso per controllare la visibilità del repository e i permessi git.
gb.anonymousPolicy = Visualizzazione, Clone & Push anonimi
gb.anonymousPolicyDescription = Chiunque può visualizzare, clonare ed fare push su questo repository.
gb.authenticatedPushPolicy = Push ristretto (utenti autenticati)
gb.authenticatedPushPolicyDescription = Chiunque può visualizzare e clonare questo repository. Tutti gli utenti autenticati hanno diritto a push.
gb.namedPushPolicy = Push ristretto (utenti specifici)
gb.namedPushPolicyDescription = Chiunque può visualizzare e clonare questo repository. Solo gli utenti selezioni hanno diritto al push.
gb.clonePolicy = Clone & Push ristretti
gb.clonePolicyDescription = Chiunque può visualizzare questo repository. I permessi di clone e push vanno definiti.
gb.viewPolicy  = Visualizzazione, Clone, & Push ristretti
gb.viewPolicyDescription = Vanno definiti i permessi per stabilire chi può visualizzare, clonare ed effettuare il push su questo repository.
gb.initialCommit = Primo commit
gb.initialCommitDescription = Questa funzionalità ti consente di clonare questo repository immediatamente. Salta questo passo se hai già un repository locale inizializzato.
gb.initWithReadme = Includi un README
gb.initWithReadmeDescription = Questa funzionalità genera semplice README per il tuo repository
gb.initWithGitignore = Includi un file .gitignore
gb.initWithGitignoreDescription = Questa funzionalità aggiunge un file di configurazione che istruisce i client Git ad ignorare file o cartelle che corrispondono a determinati criteri di selezione.
gb.pleaseSelectGitIgnore = Scegli un file .gitignore
gb.receive = ricevi
gb.permissions = permessi
gb.ownersDescription = Tutti i proprietari possono gestire tutti le impostazioni del repository ma non è concessa la rinomina del repository tranne nel caso di repository personale.
gb.userPermissionsDescription = E' possibile configurare permessi individuali. Queste impostazioni sovrascrivono quelle ereditate dal gruppo o da associazione tramite espresisone regolare.
gb.teamPermissionsDescription = E' possibile specificare permessi di gruppo. Queste impostazioni sovrascrivono quelle ereditate da associazione tramite espressione regolare.
gb.ticketSettings = Impostazioni Ticket
gb.receiveSettings = Ricezione ticket
gb.receiveSettingsDescription = Le impostazioni di ricezione governano i push al repository
gb.preReceiveDescription = Gli hook di pre-receive sono eseguiti dopo aver ricevuto i commit ma <em>PRIMA</em> che i ref vengano aggiornati.<p>Questo è l'hook da usare per rigettare un push</p>
gb.postReceiveDescription = Gli hook di post-receive sono eseguiti dopo aver ricevuto i commit e <em>DOPO</em> che i ref sono stati aggiornati.<p>Questo è l'hook da usare per inviare notifiche, attivare un sistema di build ecc.</p>
gb.federationStrategyDescription = Stabilisce se e come federare questo repository con un altra istanza Gitblit.
gb.federationSetsDescription = Questo repository sarà incluso nelle federazioni selezionate.
gb.miscellaneous = miscellanea
gb.originDescription = URL da cui questo repository è stato clonato
gb.gc = GC
gb.garbageCollection = Garbage Collection
gb.garbageCollectionDescription = Lo spazzino (GC) comprimerà gli oggetti inviati da client Git and rimuoverà dal repository oggetti non più referenziati.
gb.commitMessageRendererDescription = I messaggi di commit possono essere visualizzati come testo semplice o decorati come markdown
gb.preferences = impostazioni
gb.accountPreferences = Impostazione Utente
gb.accountPreferencesDescription = Imposta le preferenze del tuo utente
gb.languagePreference = Impostazioni di lingua
gb.languagePreferenceDescription = Scegli la tua lingua di traduzione preferita per Gitblit
gb.emailMeOnMyTicketChanges = Inviami una email quando uno dei miei ticket è modificato
gb.emailMeOnMyTicketChangesDescription  = Inviami una email quando io stesso modifico un ticket
gb.displayNameDescription = Nome visualizzato
gb.emailAddressDescription = Indirizzo email principale per la ricezione delle notifiche
gb.sshKeys = Chiavi SSH
gb.sshKeysDescription = Autenticazione tramite chiave pubblica SSH è una alternativa sicura all'autenticazione tramite password
gb.addSshKey = Aggiungi una chiave SSH
gb.key = Chiave
gb.comment = Commento
gb.sshKeyCommentDescription = Aggiungi opzionalmente un commento. Se vuoto, il commento sarà estratto dalla chiave stessa.
gb.permission = Permesso
gb.sshKeyPermissionDescription = Definisci il il livello di accesso per la chiave SSH
gb.transportPreference = Preferenze di trasporto
gb.transportPreferenceDescription = Specifica il protocollo di trasporto che preferisci usare per le operazioni di clone
src/main/java/com/gitblit/wicket/GitBlitWebApp_ko.properties
@@ -672,3 +672,73 @@
gb.mergeToDescription = \ud2f0\ucf13 \ud328\uce58\uc14b\uc744 \uba38\uc9c0\ud560 \uae30\ubcf8 \ud1b5\ud569 \ube0c\ub79c\uce58
gb.anonymousCanNotPropose = \uc775\uba85 \uc0ac\uc6a9\uc790\ub294 \ud328\uce58\uc14b\uc744 \uc81c\uc548\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
gb.youDoNotHaveClonePermission = \ub2f9\uc2e0\uc740 \uc774 \uc800\uc7a5\uc18c\ub97c \ud074\ub860\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
gb.myTickets = \ub0b4 \ud2f0\ucf13
gb.yourAssignedTickets = \ub098\uc5d0\uac8c \ud560\ub2f9\ub41c
gb.newMilestone = \uc0c8 \ub9c8\uc77c\uc2a4\ud1a4
gb.editMilestone = \ub9c8\uc77c\uc2a4\ud1a4 \uc218\uc815
gb.deleteMilestone = \ub9c8\uc77c\uc2a4\ud1a4 \"{0}\"\uc744(\ub97c) \uc0ad\uc81c\ud560\uae4c\uc694?
gb.milestoneDeleteFailed = \ub9c8\uc77c\uc2a4\ud1a4 ''{0}'' \uc0ad\uc81c \uc2e4\ud328!
gb.notifyChangedOpenTickets = \uc5f0 \ud2f0\ucf13\uc758 \ubcc0\uacbd \uc54c\ub9bc \uc804\uc1a1
gb.overdue = \uc9c0\uc5f0
gb.openMilestones = \ub9c8\uc77c\uc2a4\ud1a4 \uc5f4\uae30
gb.closedMilestones = \ub2eb\ud78c \ub9c8\uc77c\uc2a4\ud1a4
gb.administration = \uad00\ub9ac
gb.plugins = \ud50c\ub7ec\uadf8\uc778
gb.extensions = \ud655\uc7a5\uae30\ub2a5
gb.pleaseSelectProject = \ud504\ub85c\uc81d\ud2b8\ub97c \uc120\ud0dd\ud574 \uc8fc\uc138\uc694!
gb.accessPolicy = \uc811\uadfc \uc815\ucc45
gb.accessPolicyDescription = \uc800\uc7a5\uc18c \ubcf4\uae30\uc640 git \uad8c\ud55c\uc744 \uc81c\uc5b4\ud558\uae30 \uc704\ud574 \uc811\uadfc \uc815\ucc45\uc744 \uc120\ud0dd\ud558\uc138\uc694.
gb.anonymousPolicy = \uc775\uba85 \ubcf4\uae30, \ud074\ub860 \uadf8\ub9ac\uace0 \ud478\uc2dc
gb.anonymousPolicyDescription = \ub204\uad6c\ub098 \uc774 \uc800\uc7a5\uc18c\ub97c \ubcf4\uae30, \ud074\ub860, \uadf8\ub9ac\uace0 \ud478\uc2dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
gb.authenticatedPushPolicy = \uc81c\ud55c\ub41c \ud478\uc2dc (\uc778\uc99d\ub41c)
gb.authenticatedPushPolicyDescription = \ub204\uad6c\ub098 \uc774 \uc800\uc7a5\uc18c\ub97c \ubcf4\uac70\ub098 \ud074\ub860\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubaa8\ub4e0 \uc778\uc99d\ub41c \uc720\uc800\ub294 RW+ \ud478\uc2dc \uad8c\ud55c\uc744 \uac00\uc9d1\ub2c8\ub2e4.
gb.namedPushPolicy = \uc774\ub984\uc73c\ub85c \ud478\uc2dc \uc81c\ud55c
gb.namedPushPolicyDescription = \ub204\uad6c\ub098 \uc774 \uc800\uc7a5\uc18c\ub97c \ubcf4\uac70\ub098 \ud074\ub860\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc120\ud0dd\ud55c \uc720\uc800\ub9cc \ud478\uc2dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
gb.clonePolicy = \uc81c\ud55c\ub41c \ud074\ub860 & \ud478\uc2dc
gb.clonePolicyDescription = \ub204\uad6c\ub098 \uc774 \uc800\uc7a5\uc18c\ub97c \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc120\ud0dd\ud55c \uc720\uc800\ub9cc \ud074\ub860\uacfc \ud478\uc2dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
gb.viewPolicy  = \uc81c\ud55c\ub41c \ubcf4\uae30, \ud074\ub860 & \ud478\uc2dc
gb.viewPolicyDescription = \uc120\ud0dd\ud55c \uc720\uc800\ub9cc \uc774 \uc800\uc7a5\uc18c\uc5d0 \ub300\ud574 \ubcf4\uae30, \ud074\ub860 \uadf8\ub9ac\uace0 \ud478\uc2dc \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
gb.initialCommit = \ucd5c\ucd08 \ucee4\ubc0b
gb.initialCommitDescription = \uc774 \uc800\uc7a5\uc18c\ub97c \uc989\uc2dc <code>git clone</code> \ud560 \uc218 \uc788\ub3c4\ub85d \ud569\ub2c8\ub2e4. \ub85c\uceec\uc5d0\uc11c <code>git init</code> \ud588\ub2e4\uba74 \uc774 \ub2e8\uacc4\ub97c \uac74\ub108\ub6f0\uc138\uc694.
gb.initWithReadme = README \ud3ec\ud568
gb.initWithReadmeDescription = \uc800\uc7a5\uc18c\uc758 \uac04\ub2e8\ud55c README \ubb38\uc11c\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.
gb.initWithGitignore = .gitignore \ud30c\uc77c \ud3ec\ud568
gb.initWithGitignoreDescription = Git \ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \uc815\uc758\ub41c \ud328\ud134\uc5d0 \ub530\ub77c \ud30c\uc77c\uc774\ub098 \ub514\ub809\ud1a0\ub9ac\ub97c \ubb34\uc2dc\ud558\ub3c4\ub85d \uc9c0\uc815\ud55c \uc124\uc815\ud30c\uc77c\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4.
gb.pleaseSelectGitIgnore = .gitignore \ud30c\uc77c\uc744 \uc120\ud0dd\ud558\uc138\uc694.
gb.receive = \uc218\uc2e0
gb.permissions = \uad8c\ud55c
gb.ownersDescription = \uc18c\uc720\uc790\ub294 \uc800\uc7a5\uc18c\uc758 \ubaa8\ub4e0 \uc124\uc815\uc744 \uad00\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7ec\ub098, \uac1c\uc778 \uc800\uc7a5\uc18c\ub97c \uc81c\uc678\ud558\uace0\ub294 \uc800\uc7a5\uc18c \uc774\ub984\uc744 \ubcc0\uacbd\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
gb.userPermissionsDescription = \uac1c\ubcc4 \uc0ac\uc6a9\uc790 \uad8c\ud55c\uc744 \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc124\uc815\uc740 \ud300\uc774\ub098 \uc815\uaddc\uc2dd \uad8c\ud55c\uc744 \ubb34\uc2dc\ud569\ub2c8\ub2e4.
gb.teamPermissionsDescription = \uac1c\ubcc4 \ud300 \uad8c\ud55c\uc744 \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc124\uc815\uc740 \uc815\uaddc\uc2dd \uad8c\ud55c\uc744 \ubb34\uc2dc\ud569\ub2c8\ub2e4.
gb.ticketSettings = \ud2f0\ucf13 \uc124\uc815
gb.receiveSettings = \uc218\uc2e0 \uc124\uc815
gb.receiveSettingsDescription = \uc218\uc2e0 \uc124\uc815\uc740 \uc800\uc7a5\uc18c\uc5d0 \ud478\uc2dc\ud558\ub294 \uac83\uc744 \uc81c\uc5b4\ud569\ub2c8\ub2e4.
gb.preReceiveDescription = Pre-receive \ud6c5\uc740 \ucee4\ubc0b\uc744 \uc218\uc2e0\ud588\uc9c0\ub9cc, refs \uac00 \uc5c5\ub370\uc774\ud2b8 \ub418\uae30 <em>\uc804</em> \uc5d0 \uc2e4\ud589\ub429\ub2c8\ub2e4.<p>\uc774\uac83\uc740 \ud478\uc2dc\ub97c \uac70\ubd80\ud558\uae30\uc5d0 \uc801\uc808\ud55c \ud6c5 \uc785\ub2c8\ub2e4.</p>
gb.postReceiveDescription = Post-receive \ud639\uc740 \ucee4\ubc0b\uc744 \uc218\uc2e0\ud558\uace0, refs \uac00 \uc5c5\ub370\uc774\ud2b8 \ub41c <em>\ud6c4</em> \uc5d0 \uc2e4\ud589\ub429\ub2c8\ub2e4.<p>\uc774\uac83\uc740 \uc54c\ub9bc, \ube4c\ub4dc \ud2b8\ub9ac\uac70 \ub4f1\uc744 \ud558\uae30\uc5d0 \uc801\uc808\ud55c \ud6c5 \uc785\ub2c8\ub2e4.</p>
gb.federationStrategyDescription = \ub2e4\ub978 Gitblit \uacfc \ud398\ub354\ub808\uc774\uc158 \ud558\ub294 \ubc29\ubc95\uc744 \uc81c\uc5b4\ud569\ub2c8\ub2e4.
gb.federationSetsDescription = \uc774 \uc800\uc7a5\uc18c\ub294 \uc120\ud0dd\ub41c \ud398\ub354\ub808\uc774\uc158 \uc14b\uc5d0 \ud3ec\ud568\ub429\ub2c8\ub2e4.
gb.miscellaneous = \uae30\ud0c0
gb.originDescription = \uc774 \uc800\uc7a5\uc18c\uac00 \ud074\ub860\ub41c \uacf3\uc758 url
gb.gc = GC
gb.garbageCollection = \uac00\ube44\uc9c0 \uceec\ub809\uc158
gb.garbageCollectionDescription = \uac00\ube44\uc9c0 \uceec\ub809\ud130\ub294 \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0\uc11c \ud478\uc2dc\ud55c \ub290\uc2a8\ud55c \uc624\ube0c\uc81d\ud2b8\ub97c \ud328\ud0b9\ud558\uace0, \uc800\uc7a5\uc18c\uc5d0\uc11c \ucc38\uc870\ud558\uc9c0 \uc54a\ub294 \uc624\ube0c\uc81d\ud2b8\ub97c \uc0ad\uc81c\ud569\ub2c8\ub2e4.
gb.commitMessageRendererDescription = \ucee4\ubc0b \uba54\uc2dc\uc9c0\ub294 \ud3c9\ubb38 \ub610\ub294 \ub9c8\ud06c\uc5c5\uc73c\ub85c \ub80c\ub354\ub9c1\ud558\uc5ec \ud45c\uc2dc\ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
gb.preferences = \uc124\uc815
gb.accountPreferences = \uacc4\uc815 \uc124\uc815
gb.accountPreferencesDescription = \uacc4\uc815 \uc124\uc815\uc744 \uc9c0\uc815\ud569\ub2c8\ub2e4.
gb.languagePreference = \uc5b8\uc5b4 \uc124\uc815
gb.languagePreferenceDescription = \uc120\ud638\ud558\ub294 \uc5b8\uc5b4\ub97c \uc120\ud0dd\ud558\uc138\uc694.
gb.emailMeOnMyTicketChanges = \ub0b4 \ud2f0\ucf13\uc774 \ubcc0\uacbd\ub418\uba74 \uc774\uba54\uc77c\ub85c \uc54c\ub9bc
gb.emailMeOnMyTicketChangesDescription  = \ub0b4\uac00 \ub9cc\ub4e0 \ud2f0\ucf13\uc758 \ubcc0\uacbd\ub418\uba74 \ubcc0\uacbd\uc0ac\ud56d\uc744 \ub098\uc758 \uc774\uba54\uc77c\ub85c \uc54c\ub824\uc90c
gb.displayNameDescription = \ud45c\uc2dc\ub420 \uc774\ub984
gb.emailAddressDescription = \uc54c\ub9bc\uc744 \ubc1b\uae30\uc704\ud55c \uc8fc \uc774\uba54\uc77c
gb.sshKeys = SSH \ud0a4
gb.sshKeysDescription = SSH \uacf5\uac1c\ud0a4 \uc778\uc99d\uc740 \ud328\uc2a4\uc6cc\ub4dc \uc778\uc99d\uc744 \ub300\uccb4\ud558\ub294 \uc548\uc804\ud55c \ub300\uc548\uc785\ub2c8\ub2e4.
gb.addSshKey = SSH \ud0a4 \ucd94\uac00
gb.key = \ud0a4
gb.comment = \uc124\uba85
gb.sshKeyCommentDescription = \uc0ac\uc6a9\uc790 \uc120\ud0dd\uc778 \uc124\uba85\uc744 \ucd94\uac00\ud558\uc138\uc694. \ube44\uc6cc \ub450\uba74 \ud0a4 \ub370\uc774\ud130\uc5d0\uc11c \ucd94\ucd9c\ud558\uc5ec \ucc44\uc6cc\uc9d1\ub2c8\ub2e4.
gb.permission = \uad8c\ud55c
gb.sshKeyPermissionDescription = SSH \ud0a4\uc758 \uc811\uc18d \uad8c\ud55c\uc744 \uc9c0\uc815\ud558\uc138\uc694.
gb.transportPreference = \uc804\uc1a1 \uc124\uc815
gb.transportPreferenceDescription = \ud074\ub860\uc2dc \uc0ac\uc6a9\ud560 \uc124\uc815\uc744 \uc9c0\uc815\ud558\uc138\uc694.
src/main/java/com/gitblit/wicket/GitBlitWebApp_nl.properties
@@ -221,8 +221,8 @@
gb.queryHelp = Standaard query syntax wordt ondersteund.<p/><p/>Zie aub <a target="_new" href="http://lucene.apache.org/core/old_versioned_docs/versions/3_5_0/queryparsersyntax.html">Lucene Query Parser Syntax</a> voor informatie.
gb.queryResults = resultaten {0} - {1} ({2} hits)
gb.noHits = geen hits
gb.authored = authored
gb.committed = committed
gb.authored = geschreven
gb.committed = gecommit
gb.indexedBranches = geïndexeerde branches
gb.indexedBranchesDescription = kies de branches voor opname in uw Lucene index
gb.noIndexedRepositoriesWarning = geen van uw repositories is geconfigureerd voor Lucene indexering
@@ -517,7 +517,7 @@
gb.proposedThisChange = stelde deze wijziging voor
gb.uploadedPatchsetN = uploade patchset {0}
gb.uploadedPatchsetNRevisionN = uploade patchset {0} revisie {1}
gb.mergedPatchset = merged patchset
gb.mergedPatchset = gemergede patchset
gb.commented = becommentarieerde
gb.noDescriptionGiven = geen omschrijving gegeven
gb.toBranch = naar {0}
@@ -534,10 +534,10 @@
gb.compareToN = vergelijk met {0}
gb.open = open
gb.closed = gesloten
gb.merged = merged
gb.merged = gemerged
gb.ticketPatchset = ticket {0}, patchset {1}
gb.patchsetMergeable = Deze patchset kan automatisch gemerged worden naar {0}.
gb.patchsetMergeableMore = Deze patchset mag ook gemerged worden naar {0} vanaf de command line.
gb.patchsetMergeableMore = Deze patchset mag ook gemerged worden naar {0} vanaf de commandline.
gb.patchsetAlreadyMerged = Deze patchset is gemerged naar {0}.
gb.patchsetNotMergeable = Deze patchset kan niet automatisch gemerged worden naar {0}.
gb.patchsetNotMergeableMore = Deze patchset moet gerebased of handmatig gemerged worden naar {0} om conflicten op te lossen.
@@ -546,7 +546,7 @@
gb.patchsetVetoedMore = Een reviewer heeft een veto uitgesproken over deze patchset.
gb.write = write
gb.comment = commentaar
gb.preview = preview
gb.preview = voorbeeld
gb.leaveComment = plaats een opmerking...
gb.showHideDetails = toon/verberg details
gb.acceptNewPatchsets = accepteer patchsets
@@ -605,12 +605,12 @@
gb.all = alle
gb.mergeBase = merge base
gb.checkout = checkout
gb.checkoutViaCommandLine =  Checkout via command line
gb.checkoutViaCommandLine =  Checkout via commandline
gb.checkoutViaCommandLineNote = U kunt deze wijzigingen uitchecken en lokaal testen vanuit uw eigen kopie van deze repositorie.
gb.checkoutStep1 = Dowbload the actuele patchset \u2014 run deze vanuit uw eigen projectdirectorie
gb.checkoutStep2 = Check de patchset uit naar een nieuwe branch en review hem
gb.mergingViaCommandLine = Mergen via command line
gb.mergingViaCommandLineNote = Als u de merge knop niet wilt gebruiken of een automatische merge niet kan worden uitgevoerd kunt u een handmatige merge op de command line uitvoeren.
gb.mergingViaCommandLine = Mergen via commandline
gb.mergingViaCommandLineNote = Als u de merge knop niet wilt gebruiken of een automatische merge niet kan worden uitgevoerd kunt u een handmatige merge op de commandline uitvoeren.
gb.mergeStep1 = Check out een nieuwe branch voor het reviewen van wijzigingen \u2014 run deze vanuit uw eigen projectdirectorie
gb.mergeStep2 = Breng de voorgestelde wijzigingen in en review ze
gb.mergeStep3 = Merge de voorgestelde wijzigingen en update de server
@@ -670,3 +670,75 @@
gb.serverDoesNotAcceptPatchsets = Deze server accepteert geen patchsets.
gb.ticketIsClosed = Deze ticket is gesloten.
gb.mergeToDescription = default integratie branch voor het mergen van ticket patchsets
gb.anonymousCanNotPropose = Anonieme gebruikers kunnen geen patchsets voorstellen.
gb.youDoNotHaveClonePermission = U heeft geen rechten voor het clonen van deze repositorie.
ggb.myTickets = mijn tickets
gb.yourAssignedTickets = toegewezen aan mij
gb.newMilestone = nieuwe milestone
gb.editMilestone = wijzig milestone
gb.deleteMilestone = Verwijder milestone \"{0}\"?
gb.milestoneDeleteFailed = Milestone verwijdering ''{0}'' niet gelukt!
gb.notifyChangedOpenTickets = verstuur notificatie voor wijziging open tickets
gb.overdue = te laat
gb.openMilestones = open milestones
gb.closedMilestones = gesloten milestones
gb.administration = administratie
gb.plugins = plugins
gb.extensions = extensies
gb.pleaseSelectProject = Kies aub het project!
gb.accessPolicy = Toegangspolicy
gb.accessPolicyDescription = Kies een toegangspolicy voor het managen van de zichtbaarheid van de repositorie en de git toegangsrechten.
gb.anonymousPolicy = Anoniem View, Clone, & Push
gb.anonymousPolicyDescription = Iedereen mag deze repositorie zien, clonen, en er naartoe pushen.
gb.authenticatedPushPolicy = Beperk Push (Geauthenticeerd)
gb.authenticatedPushPolicyDescription = Iedereen kan deze repositorie zien en clonen. Alle geauthenticeerde gebruikers hebben RW+ push permissie.
gb.namedPushPolicy = Beperk Push (Gebruiker bekend)
gb.namedPushPolicyDescription = Iedereen kan deze repositorie zien en clonen. U bepaalt wie er mag pushen.
gb.clonePolicy = Beperk Clone & Push
gb.clonePolicyDescription = Iedereen kan deze repositorie zien. U bepaalt wie er mag clonen en pushen.
gb.viewPolicy  = Beperk Zien, Clonen en Push
gb.viewPolicyDescription = U bepaalt wie deze repositorie mag zien, clonen en er naar toe pushen.
gb.initialCommit = Initiele Commit
gb.initialCommitDescription = Dit maakt het u mogelijk om meteen <code>git clone</code> deze repositorie. Sla deze stap over als u al <code>git init</code> lokaal heeft uitgevoerd.
gb.initWithReadme = Voeg een README toe
gb.initWithReadmeDescription = Dit zal een eenvoudige README document toevoegen aan uw repositorie.
gb.initWithGitignore = Voeg een .gitignore bestand toe
gb.initWithGitignoreDescription = Dit zal een configuratiebestand toevoegen dat uw Git programma zal instrueren om bepaalde bestanden of directories die aan bepaalde selectiepatronen voldoen te negeren.
gb.pleaseSelectGitIgnore = Kies aub een .gitignore bestand
gb.receive = ontvang
gb.permissions = permissies
gb.ownersDescription = Eigenaren kunnen alle repositoriesettings managen maar het is niet toegestaan een repositorie te hernoemen tenzij het hun persoonlijke repositorie is.
gb.userPermissionsDescription = U kunt afzonderlijke gebruikerspermissies specificeren. Deze instellingen zullen team- of regexpermisies overrulen.
gb.teamPermissionsDescription = U kunt afzonderlijke teamspermissies specificeren. Deze instellingen zullen regexpermisies overrulen.
gb.ticketSettings = Ticket Instellingen
gb.receiveSettings = Ontvangstinstellingen
gb.receiveSettingsDescription = De Ontvangstinstellingen managen pushes naar de repositorie.
gb.preReceiveDescription = Pre-receive hooks worden uitgevoerd na commits zijn ontvangen maar <em>VOORDAT</em> de refs worden geupdated.<p>Dit is de juiste hook voor het afwijzen van een push.</p>
gb.postReceiveDescription = Post-receive hooks worden uitgevoerd na commits zijn ontvangen maar <em>NADAT</em> de refs zijn geupdated.<p>Dit is de juiste hook voor notificaties, build triggers, etc.</p>
gb.federationStrategyDescription = Bepaal of en hoe deze repositorie te federeren met een andere Gitblit.
gb.federationSetsDescription = Deze repository zal worden opgenomen in de geselecteerde federatie sets.
gb.miscellaneous = diversen
gb.originDescription = De url vanaf welke deze repositorie was gecloned.
gb.gc = GC
gb.garbageCollection = Garbage Collection
gb.garbageCollectionDescription = De garbage collector zal losse objecten die gepushed zijn van clients samenvoegen en zal ongereferentieerde objecten uit de repository verwijderen.
gb.commitMessageRendererDescription = Commit meldingen kunnen worden getoond als platte tekst of als gerenderde markup.
gb.preferences = voorkeuren
gb.accountPreferences = Accountvoorkeuren
gb.accountPreferencesDescription = Specificeer uw accountvoorkeuren
gb.languagePreference = Taalvoorkeuren
gb.languagePreferenceDescription = Selecteer uw voorkeursvertaling van voor Gitblit
gb.emailMeOnMyTicketChanges = Email bij ticketwijziging
gb.emailMeOnMyTicketChangesDescription  = Stuur me een emailnotificatie voor wijzigingen die ik aanbreng aan een ticket
gb.displayNameDescription = De gewenste naam om te tonen
gb.emailAddressDescription = Het primaire emailadres voor het ontvangen van notificaties
gb.sshKeys = SSH Sleutels
gb.sshKeysDescription = SSH publiekesleutelauthenticatie is een veilig alternatief voor wachtwoordauthenticatie
gb.addSshKey = Voeg SSH Sleutel toe
gb.key = Sleutel
gb.comment = Opmerking
gb.sshKeyCommentDescription = Voeg een optionele opmerking toe. Indien leeg zal de opmerking uit de sleutelgegevens worden gehaald.
gb.permission = Permissie
gb.sshKeyPermissionDescription = Specificeer de toegangsrechten voor de SSH sleutel
gb.transportPreference = Transportvoorkeuren
gb.transportPreferenceDescription = Stel de transportmethode in die u wenst voor het clonen
src/main/java/com/gitblit/wicket/GitBlitWebApp_no.properties
@@ -100,6 +100,9 @@
gb.commitActivityTrend = aktivitetstrend for commits
gb.commitActivityDOW = commit aktivitet gruppert p\u00e5 ukedag
gb.commitActivityAuthors = prim\u00e6rforfattere etter aktivitet
gb.feed = feed
gb.cancel = avbryt
gb.changePassword = endre passord
gb.isFederated = er federert
gb.federateThis = federer dette repositoriet
gb.federateOrigin = federere origin
@@ -669,3 +672,73 @@
gb.mergeToDescription = standard integration branch for merging av ticket patchsett
gb.anonymousCanNotPropose = Anonyme brukere kan ikke foresl\u00e5 patchsett
gb.youDoNotHaveClonePermission = Du har ikke tillatelse til \u00e5 klone dette repositoriet.
gb.myTickets = mine tickets
gb.yourAssignedTickets = tilordnet deg
gb.newMilestone = ny milep\u00e6l
gb.editMilestone = endre milep\u00e6l
gb.deleteMilestone = Slette  milep\u00e6l \"{0}\"?
gb.milestoneDeleteFailed = Greide ikke å slette milep\u00e6l ''{0}''!
gb.notifyChangedOpenTickets = send meldin om endrede \u00e5pne tickets
gb.overdue = forfalt
gb.openMilestones = \u00e5pne milep\u00e6ler
gb.closedMilestones = lukkede milep\u00e6ler
gb.administration = administrasjon
gb.plugins = plugins
gb.extensions = extensions
gb.pleaseSelectProject = Vennligst velg prosjekt!
gb.accessPolicy = Tilgangspolicy
gb.accessPolicyDescription = Velg en tilgangspolicy for å kontrollere synlighet og tilganger.
gb.anonymousPolicy = Anonym view, clone og push
gb.anonymousPolicyDescription = Alle kan se, clone ofg pushe til dette repositoriet.
gb.authenticatedPushPolicy = Begrens push (Autentisert)
gb.authenticatedPushPolicyDescription = Alle kan se og klone dette repositoriet. Alle autentiserte brukere har lese og skrivetilgang.
gb.namedPushPolicy = Begrens push (navngitt)
gb.namedPushPolicyDescription = Alle kan se og klone repositoriet. Du bestemmer hvem som kan pushe.
gb.clonePolicy = Begrens Clone og Push
gb.clonePolicyDescription = Alle kan se dette repositoriet. Du bestemmer hvem som kan clone og pushe.
gb.viewPolicy  = Begrense View, Clone og Push
gb.viewPolicyDescription = Du bestemmer hvem som kan se, clone og pushe til dette repositoriet.
gb.initialCommit = F\u00F8rste commit
gb.initialCommitDescription = Dette vil la deg kunne <code>git clone</code> repositoriet med en gang. Hopp over dette skrittet hvis du allerede har kj\u0F8rt  if <code>git init</code> lokalt.
gb.initWithReadme = Inkluder en README
gb.initWithReadmeDescription = Dette vil generere en enkel README-fil i ditt repository.
gb.initWithGitignore = Inkluder en .gitignore fil
gb.initWithGitignoreDescription = Dette vil inkludere en konfigurasjonsfil som instruerer git-klienter til å ignorerer filer og kataloger som matcher definerte m\u00F8nstre.
gb.pleaseSelectGitIgnore = Vennligst velg en .gitignore fil
gb.receive = motta
gb.permissions = rettigheter
gb.ownersDescription = Eiere kan administrere alle repositoriets innstillinger men de kan ikke endre p\u00e5 repositoriets navn med mindre det er deres eget repository.
gb.userPermissionsDescription = Du kan spesifisere individuelle brukerrettigheter. Disse innstillingene overstyrer team- eller regul\u00e6ruttrykk-baserte rettigheter.
gb.teamPermissionsDescription = Du kan spesifisere individuelle team-rettigheter. Disse innstillingene overstyrer regul\u00e6ruttrykk-baserte rettigheter..
gb.ticketSettings = Ticket innstillinger
gb.receiveSettings = Innstillinger for mottak av push
gb.receiveSettingsDescription = Kontrollerer pushing til repositoriet.
gb.preReceiveDescription = Pre-receive hooks blir utf\u00F8rt etter en committ er mottatt men <em>F\u00D8</em> refs har blitt oppdatert.<p>Dette er det passende stedet \u00e5 avvise en push.</p>
gb.postReceiveDescription = Post-receive hooks blir utf\u00F8rt etter en committ er mottatt og <em>ETTER</em> refs har blitt oppdatert.<p>Dette er det passende stedet for notifikasjoner, build triggers osv.</p>
gb.federationStrategyDescription = Kontroller om og hvordan dette repositoriet skal federeres med en annen Gitblit instans.
gb.federationSetsDescription = Dette repositoriet vil bli inkludert i de valgte federeringssettene.
gb.miscellaneous = ymse
gb.originDescription = URL'en som dette repositoriet ble klonet fra.
gb.gc = GC
gb.garbageCollection = Garbage Collection
gb.garbageCollectionDescription = Garbage collectoren vil pakke sammen l\u00F8se objekter pushet fra klientene og fjerne objekter det ikke refereres til fra minnet.
gb.commitMessageRendererDescription = Commit-meldinger kan vises som ren tekst, eller som markup.
gb.preferences = innstillinger
gb.accountPreferences = Kontoinnstillinger
gb.accountPreferencesDescription = Velg dine kontoinnstillinger
gb.languagePreference = Foretrukket spr\u00e5k
gb.languagePreferenceDescription = Velg ditt foretrukne spr\u00e5k for Gitblit
gb.emailMeOnMyTicketChanges = Send meg en epost når ticketen min endrer seg
gb.emailMeOnMyTicketChangesDescription  = Send meg en epost for endringer jeg gjør på en ticket.
gb.displayNameDescription = Foretrukket visningsnavn
gb.emailAddressDescription = Prim\u00e6r epostadresse for notifikasjoner
gb.sshKeys = SSH n\u00F8kler
gb.sshKeysDescription = SSH public key autentisering er et sikkert alternativ til autentisering med passord
gb.addSshKey = Legg til SSH n\u00F8kkel
gb.key = N\u00F8kkel
gb.comment = Kommentar
gb.sshKeyCommentDescription = Angi en valgfri kommentar. Kommentaren vil bli ekstrahert fra n\u00F8kkeldataene hvis blank
gb.permission = Tilgang
gb.sshKeyPermissionDescription = Angi tilgangsrettinghet for SSH n\u00F8kkelen
gb.transportPreference = Foretrukket transport
gb.transportPreferenceDescription = Sett transportmetoden du foretrekker for cloning
src/main/java/com/gitblit/wicket/GitBlitWebApp_zh_CN.properties
@@ -669,4 +669,76 @@
gb.repositoryDoesNotAcceptPatchsets = \u5f53\u524d\u7248\u672c\u5e93\u4e0d\u5141\u8bb8\u8865\u4e01\u96c6\u3002
gb.serverDoesNotAcceptPatchsets = \u5f53\u524d\u670d\u52a1\u5668\u4e0d\u5141\u8bb8\u8865\u4e01\u96c6\u3002
gb.ticketIsClosed = \u5f53\u524d\u5de5\u5355\u5df2\u5173\u95ed\u3002
gb.mergeToDescription = \u5408\u5e76\u5de5\u5355\u8865\u4e01\u96c6\u7684\u9ed8\u8ba4\u96c6\u6210\u5206\u652f
gb.mergeToDescription = \u5408\u5e76\u5de5\u5355\u8865\u4e01\u96c6\u7684\u9ed8\u8ba4\u96c6\u6210\u5206\u652f
gb.anonymousCanNotPropose = \u7981\u6b62\u533f\u540d\u7528\u6237\u63d0\u4ea4\u8865\u4e01\u96c6\u3002
gb.youDoNotHaveClonePermission = \u60a8\u6ca1\u6709\u6743\u9650\u514b\u9686\u5f53\u524d\u7248\u672c\u5e93\u3002
gb.myTickets = \u6211\u7684\u5de5\u5355
gb.yourAssignedTickets = \u8d23\u4efb\u5de5\u5355
gb.newMilestone = \u65b0\u5efa milestone
gb.editMilestone = \u7f16\u8f91 milestone
gb.deleteMilestone = \u5220\u9664 milestone \\"{0}\\"?
gb.milestoneDeleteFailed = \u5220\u9664 milestone ''{0}'' \u5931\u8d25!
gb.notifyChangedOpenTickets = \u5bf9\u53d1\u751f\u53d8\u52a8\u7684\u5df2\u5f00\u542f\u5de5\u5355\u53d1\u9001\u901a\u77e5
gb.overdue = \u8fc7\u671f
gb.openMilestones = \u5df2\u5f00\u542f milestones
gb.closedMilestones = \u5df2\u5173\u95ed milestones
gb.administration = \u7ba1\u7406
gb.plugins = \u63d2\u4ef6
gb.extensions = \u6269\u5c55
gb.pleaseSelectProject = \u8bf7\u9009\u62e9\u9879\u76ee!
gb.accessPolicy = \u8bbf\u95ee\u7b56\u7565
gb.accessPolicyDescription = \u8bf7\u9009\u62e9\u4e00\u4e2a\u63a7\u5236\u7248\u672c\u5e93\u53ef\u89c1\u6027\u4ee5\u53caGit\u8bbf\u95ee\u6743\u9650\u7684\u8bbf\u95ee\u7b56\u7565\u3002
gb.anonymousPolicy = \u533f\u540d\u67e5\u770b, \u514b\u9686\u548c\u63a8\u9001
gb.anonymousPolicyDescription = \u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u67e5\u770b\uff0c\u514b\u9686\u4ee5\u53ca\u63a8\u9001\u81f3\u6b64\u7248\u672c\u5e93\u3002
gb.authenticatedPushPolicy = \u9650\u5236\u63a8\u9001 (\u6388\u6743\u8bbf\u95ee)
gb.authenticatedPushPolicyDescription = \u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u67e5\u770b\u4ee5\u53ca\u514b\u9686\u6b64\u7248\u672c\u5e93\u3002\u4efb\u4f55\u5df2\u6388\u6743\u7528\u6237\u62e5\u6709RW+\u63a8\u9001\u6743\u9650\u3002
gb.namedPushPolicy = \u9650\u5236\u63a8\u9001 (\u6307\u5b9a\u7528\u6237)
gb.namedPushPolicyDescription = \u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u67e5\u770b\u4ee5\u53ca\u514b\u9686\u6b64\u7248\u672c\u5e93\u3002 \u60a8\u53ef\u4ee5\u9009\u62e9\u62e5\u6709\u63a8\u9001\u6743\u9650\u7684\u7528\u6237\u3002
gb.clonePolicy = \u9650\u5236\u514b\u9686\uff0c\u63a8\u9001
gb.clonePolicyDescription = \u4efb\u4f55\u4eba\u90fd\u53ef\u4ee5\u770b\u5230\u6b64\u7248\u672c\u5e93\u3002\u60a8\u53ef\u4ee5\u9009\u62e9\u62e5\u6709\u514b\u9686\u548c\u63a8\u9001\u6743\u9650\u7684\u7528\u6237\u3002
gb.viewPolicy = \u9650\u5236\u67e5\u770b\uff0c\u514b\u9686\u548c\u63a8\u9001
gb.viewPolicyDescription = \u60a8\u53ef\u4ee5\u9009\u62e9\u62e5\u6709\u67e5\u770b\uff0c\u514b\u9686\u548c\u63a8\u9001\u6743\u9650\u7684\u7528\u6237\u3002
gb.initialCommit = \u521d\u59cb\u5316\u63d0\u4ea4
gb.initialCommitDescription = \u6b64\u529f\u80fd\u76f8\u5f53\u4e8e\u76f4\u63a5\u5bf9\u5f53\u524d\u7248\u672c\u5e93\u8fdb\u884c <code>git clone</code> \u3002 \u5982\u679c\u8df3\u8fc7\u6b64\u6b65\uff0c\u60a8\u5fc5\u987b\u5728\u672c\u5730\u8fdb\u884c <code>git init</code> \u3002
gb.initWithReadme = \u52a0\u5165 README
gb.initWithReadmeDescription = \u6b64\u529f\u80fd\u4f1a\u81ea\u52a8\u751f\u6210\u4e00\u4e2a\u60a8\u7684\u7248\u672c\u5e93\u7684 README \u6587\u4ef6\u3002
gb.initWithGitignore = \u52a0\u5165 .gitignore \u6587\u4ef6
gb.initWithGitignoreDescription = \u6b64\u529f\u80fd\u4f1a\u751f\u6210\u4e00\u4e2a\u914d\u7f6e\u6587\u4ef6\uff0c\u65e8\u5728\u63d0\u793a Git \u5ba2\u6237\u7aef\u5ffd\u7565\u5bf9\u5e94\u7684\u6587\u4ef6\u6216\u6587\u4ef6\u5939\u3002
gb.pleaseSelectGitIgnore = \u8bf7\u9009\u62e9\u4e00\u4e2a .gitignore \u6587\u4ef6
gb.receive = receive
gb.permissions = permissions
gb.ownersDescription = \u7248\u672c\u5e93\u62e5\u6709\u8005\u62e5\u6709\u7248\u672c\u5e93\u7684\u6240\u6709\u7ba1\u7406\u6743\u9650\uff0c\u4f46\u662f\u53ea\u5141\u8bb8\u4fee\u6539\u79c1\u6709\u7248\u672c\u5e93\u7684\u540d\u79f0\u3002
gb.userPermissionsDescription = \u60a8\u53ef\u4ee5\u8bbe\u7f6e\u79c1\u6709\u7528\u6237\u6743\u9650\u3002 \u6b64\u8bbe\u7f6e\u4f1a\u8986\u76d6\u56e2\u961f\u6743\u9650\u4ee5\u53caregex\u6743\u9650\u3002
gb.teamPermissionsDescription = \u60a8\u53ef\u4ee5\u8bbe\u7f6e\u79c1\u6709\u56e2\u961f\u6743\u9650\u3002 \u6b64\u8bbe\u7f6e\u4f1a\u8986\u76d6regex\u6743\u9650\u3002
gb.ticketSettings = \u5de5\u5355\u8bbe\u7f6e
gb.receiveSettings = Receive \u8bbe\u7f6e
gb.receiveSettingsDescription = Receive\u8bbe\u7f6e\u8bbe\u5b9a\u63a8\u9001\u81f3\u7248\u672c\u5e93\u65f6\u7684\u884c\u4e3a\u3002
gb.preReceiveDescription = Pre-receive hooks \u4f1a\u5728\u63a8\u9001\u63a5\u6536\u540e\uff0c refs \u66f4\u65b0<em>\u4e4b\u524d</em>\u6267\u884c\u3002<p>\u8fd9\u79cdhook\u662f\u8fdb\u884c\u63a8\u9001\u62d2\u7edd\u7684\u597d\u5de5\u5177\u3002</p>
gb.postReceiveDescription = Post-receive hooks \u4f1a\u5728\u63a8\u9001\u63a5\u6536\u540e\uff0c refs \u66f4\u65b0<em>\u4e4b\u540e</em>\u6267\u884c\u3002<p>\u8fd9\u79cdhook\u662f\u8fdb\u884c\u901a\u77e5\uff0c\u4f7f\u7528\u6784\u5efa\u89e6\u53d1\u5668\u7b49\u7684\u597d\u5de5\u5177\u3002</p>
gb.federationStrategyDescription = \u8bbe\u7f6e\u662f\u5426\u4ee5\u53ca\u5982\u4f55\u5c06\u5f53\u524d\u7248\u672c\u5e93\u4e0e\u5176\u4ed6Gitblit\u8fdb\u884cfederate\u3002
gb.federationSetsDescription = \u5f53\u524d\u7248\u672c\u5e93\u5c06\u4f1a\u88ab\u5305\u542b\u8fdb\u9009\u5b9a\u7684federation\u96c6\u4e2d\u3002
gb.miscellaneous = miscellaneous
gb.originDescription = \u5f53\u524d\u7248\u672c\u5e93\u7684\u514b\u9686\u6e90\u5730\u5740\u3002
gb.gc = GC
gb.garbageCollection = \u5783\u573e\u6536\u96c6
gb.garbageCollectionDescription = \u5783\u573e\u6536\u96c6\u5668\u4f1a\u5c06\u5ba2\u6237\u7aef\u6240\u53d1\u9001\u7684\u677e\u6563\u6587\u4ef6\u6253\u5305\u5e76\u5220\u9664\u5f53\u524d\u7248\u672c\u5e93\u4e2d\u672a\u88ab\u5f15\u7528\u7684\u5bf9\u8c61\u3002
gb.commitMessageRendererDescription = \u53ef\u4ee5\u5c06\u63d0\u4ea4\u4fe1\u606f\u663e\u793a\u4e3a\u7eaf\u6587\u672c\u6216\u8005\u5df2\u6392\u7248\u7684Markup\u6587\u672c
gb.preferences = \u504f\u597d
gb.accountPreferences = \u7528\u6237\u504f\u597d
gb.accountPreferencesDescription = \u8bbe\u7f6e\u60a8\u7684\u7528\u6237\u504f\u597d
gb.languagePreference = \u8bed\u8a00\u504f\u597d
gb.languagePreferenceDescription = \u9009\u62e9\u60a8\u559c\u6b22\u7684Gitblit\u7ffb\u8bd1
gb.emailMeOnMyTicketChanges = \u5728\u6211\u7684\u5de5\u5355\u53d1\u751f\u53d8\u5316\u540e\u90ae\u4ef6\u901a\u77e5\u6211
gb.emailMeOnMyTicketChangesDescription = \u5bf9\u6211\u5728\u5de5\u5355\u4e2d\u4f5c\u51fa\u7684\u4fee\u6539\u53d1\u9001\u90ae\u4ef6\u901a\u77e5\u3002
gb.displayNameDescription = \u9009\u62e9\u663e\u793a\u540d\u79f0
gb.emailAddressDescription = \u63a5\u6536\u901a\u77e5\u7684\u4e3b\u8981\u90ae\u7bb1\u5730\u5740
gb.sshKeys = SSH Keys
gb.sshKeysDescription = SSH \u516c\u7ea6\u8ba4\u8bc1\u662f\u4e00\u79cd\u4e0d\u540c\u4e8e\u5bc6\u7801\u8ba4\u8bc1\u7684\u5b89\u5168\u8ba4\u8bc1\u65b9\u6cd5\u3002
gb.addSshKey = \u6dfb\u52a0 SSH Key
gb.key = Key
gb.comment = \u53d1\u8868
gb.sshKeyCommentDescription = \u8f93\u5165\u8bc4\u8bba\uff08\u53ef\u4e3a\u7a7a\uff09. \u5982\u679c\u4e3a\u7a7a\uff0c \u8bc4\u8bba\u5185\u5bb9\u5c06\u4f1a\u4ece\u4e3b\u8981\u6570\u636e\u4e2d\u63d0\u53d6\u3002
gb.permission = \u6743\u9650
gb.sshKeyPermissionDescription = \u8bbe\u7f6eSSH key\u7684\u8bbf\u95ee\u6743\u9650
gb.transportPreference = Transport \u504f\u597d
gb.transportPreferenceDescription = \u9009\u62e9\u60a8\u7528\u6765\u514b\u9686\u7684 Transport
src/main/java/com/gitblit/wicket/charting/Flotr2Charts.java
@@ -32,24 +32,30 @@
    @Override
    public void renderHead(IHeaderResponse response) {
        // add Google Chart JS API reference
        ServletContext servletContext = WebApplication.get().getServletContext();
        String contextPath = servletContext.getContextPath();
        response.renderJavascriptReference(contextPath + "/bootstrap/js/jquery.js");
        response.renderJavascriptReference(contextPath + "/flotr2/flotr2.min.js");
        response.renderCSSReference(contextPath + "/flotr2/flotr2.custom.css");
        // prepare draw chart function
        StringBuilder sb = new StringBuilder();
        line(sb, "$( document ).ready(function() {");
        line(sb, "try {");
        // add charts to header
        for (Chart chart : charts) {
            chart.appendChart(sb);
        }
        line(sb, "} catch (exception) {");
        line(sb, "  if (window.console && window.console.log) {");
        line(sb, "    window.console.log('flotr2 exception');");
        line(sb, "    window.console.log(exception);");
        line(sb, "  }");
        line(sb, "}");
        // end draw chart function
        line(sb, "});");
        response.renderJavascript(sb.toString(), null);
@@ -72,5 +78,5 @@
            String valueName) {
        return new Flotr2BarChart(tagId, title, keyName, valueName);
    }
}
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_de.html
New file
@@ -0,0 +1,60 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd"
      xml:lang="en"
      lang="en">
<body>
<wicket:extend>
<div class="container">
<div class="markdown">
<div class="row">
<div class="span10 offset1">
    <h3><center>Leeres Repository</center></h3>
    <div class="alert alert-info">
        <span wicket:id="repository" style="font-weight: bold;">[repository]</span> ist ein leeres Repository und kann von Gitblit nicht angezeigt werden.
        <p></p>
        Bitte pushen Sie einige Commits nach <span wicket:id="pushurl"></span>
        <hr/>
        Nachdem Sie Commits gepusht haben, können Sie diese Seite <b>aktualisieren</b>, um Ihr Repository anzuzeigen.
    </div>
    <h3><center>Neues Respository auf der Kommandozeile erstellen</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Ein existierendes Repository von der Kommandozeile pushen</center></h3>
    <pre wicket:id="existingSyntax"></pre>
    <div class="span8 offset1">
        <h2><center>Git lernen</center></h2>
        <p>Falls Sie unsicher sind, was Sie mit diesen Informationen anfangen sollen, können Sie sich das <a href="http://git-scm.com/book/de">Git Community Buch</a> anschauen, um ein besseres Verständnis über die Verwendung von Git aufzubauen.</p>
        <h4>Open Source Git Clients</h4>
        <table>
        <tbody>
            <tr><td><a href="http://git-scm.com">Git</a></td><td>der offizielle Kommandozeilen-Git-Client</td></tr>
            <tr><td><a href="http://tortoisegit.googlecode.com">TortoiseGit</a></td><td>Windows Datei Explorer Integration (erfordert den offiziellen Kommandozeilen-Client)</td></tr>
            <tr><td><a href="http://eclipse.org/egit">Eclipse/EGit</a></td><td>Git für die Eclipse IDE (basiert auf JGit, ebenso wie Gitblit)</td></tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a></td><td>C# Frontend für Git mit Windows Explorer und Visual Studio Integration</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a></td><td>ein Mac OS X Git Client</td></tr>
        </tbody>
        </table>
        <h4>Kommerzielle/Closed-Source Git Clients</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>Ein Java Git und Mercurial Client für Windows, Mac und Linux</td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a></td><td>Ein freier Git und Mercurial Client für Windows und Mac</td></tr>
            <tr><td><a href="http://www.git-tower.com/">Tower</a></td><td>Ein Mac OS X Git Client</td></tr>
        </tbody>
        </table>
    </div>
</div>
</div>
</div>
</div>
</wicket:extend>
</body>
</html>
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_it.html
New file
@@ -0,0 +1,60 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd"
      xml:lang="en"
      lang="en">
<body>
<wicket:extend>
<div class="container">
<div class="markdown">
<div class="row">
<div class="span10 offset1">
    <h3><center>Repository vuoto</center></h3>
    <div class="alert alert-info">
        <span wicket:id="repository" style="font-weight: bold;">[repository]</span> è vuoto e non può essere visualizzato con Gitblit.
        <p></p>
        Per favore effettua il push di alcuni commit su <span wicket:id="pushurl"></span>
        <hr/>
        Dopo il push <b>ricarica</b> questa pagina per vedere il contenuto del repository.
    </div>
    <h3><center>Crea un nuovo repository da riga di comando</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Effettua il push da riga di comando</center></h3>
    <pre wicket:id="existingSyntax"></pre>
    <div class="span8 offset1">
        <h2><center>Impara a usare Git</center></h2>
        <p>Se non sei sicuro di quello che stai facendo, prova a leggere <a href="http://book.git-scm.com/it">Git Community Book</a> in italiano per una miglior comprensione dell'utilizzo di Git.</p>
        <h4>Applicazioni client Git open source</h4>
        <table>
        <tbody>
            <tr><td><a href="http://git-scm.com">Git</a></td><td>la versione ufficiale di Git, da riga di comando</td></tr>
            <tr><td><a href="http://tortoisegit.googlecode.com">TortoiseGit</a></td><td>Integrazione per Windows Explorer (richiede la versione ufficiale di Git da riga di comando)</td></tr>
            <tr><td><a href="http://eclipse.org/egit">Eclipse/EGit</a></td><td>Git per ambienti di sviluppo basati su Eclipse (basato su JGit, come Gitblit)</td></tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a></td><td>applicazione C# che integra Git in Windows Explorer e Visual Studio</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a></td><td>un client Git per Mac OS X</td></tr>
        </tbody>
        </table>
        <h4>Applicazioni client commerciali/non open source</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>Un client Git e Mercurial scritto in Java per Windows, Mac, and Linux</td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a></td><td>Un client Git e Mercurial gratuito per Windows & Mac</td></tr>
            <tr><td><a href="http://www.git-tower.com/">Tower</a></td><td>Un client Git per Mac OS X</td></tr>
        </tbody>
        </table>
    </div>
</div>
</div>
</div>
</div>
</wicket:extend>
</body>
</html>
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_ko.html
@@ -14,41 +14,41 @@
    <div class="alert alert-info">
        <span wicket:id="repository" style="font-weight: bold;">[repository]</span> 저장소는 비어 있어서 Gitblit 에서 볼 수 없습니다.
        <p></p>        
        이 Git url 에 커밋해 주세요. <span wicket:id="pushurl"></span>
        이 Git url 에 커밋을 푸시하세요. <span wicket:id="pushurl"></span>
        <hr/>
        After you have pushed commits you may <b>refresh</b> this page to view your repository.
        커밋을 푸시한 후 이 페이지를 <b>새로고침</b>하면 저장소가 보여질 것입니다.
    </div>
        
    <h3><center>Create a new repository on the command-line</center></h3>
    <h3><center>커맨드라인에서 새 저장소 생성하기</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Push an existing repository from the command-line</center></h3>
    <h3><center>커맨드라인에서 기존의 저장소를 푸시하기</center></h3>
    <pre wicket:id="existingSyntax"></pre>
    <div class="span8 offset1">
        <h2><center>Git 배우기</center></h2>
        <p>만약 사용법에 자신이 없다면, Git 사용법을 더 잘 이해하기 위해 
             <a href="http://book.git-scm.com/ko">Git Community Book</a> 또는 을 볼 것을 고려해 보세요.</p>
             <a href="http://book.git-scm.com/ko">Git Community Book</a> 을 볼 것을 고려해 보세요.</p>
        <h4>오픈소스 Git 클라이언트</h4>
        <h4>오픈 소스 Git 클라이언트</h4>
        <table>
        <tbody>
            <tr><td><a href="http://git-scm.com">Git</a></td><td>명령어 기반 공식 Git</td></tr>
            <tr><td><a href="http://tortoisegit.googlecode.com">TortoiseGit</a></td><td>윈도의 파일 탐색기에 통합된 UI 클라이언트 (명령어 기반 공식 Git 필요)</td></tr>
            <tr><td><a href="http://eclipse.org/egit">Eclipse/EGit</a></td><td>이클립스 IDE 플러그인 (Gitblit 과 같은 JGit 기반)</td></tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a></td><td>C# frontend for Git that features Windows Explorer and Visual Studio integration</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a></td><td>a Mac OS X Git client</td></tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a></td><td>윈도 탐색기와 비주얼스튜디어를 위한 C#으로 개발된 기능</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a></td><td>맥 OS X 용 Git 클라이언트</td></tr>
        </tbody>            
        </table>
        <h4>유료 Git 클라이언트</h4>
        <h4>유료/클로즈드 소스 Git 클라이언트</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>자바 어플리케이션 (명령어 기반 공식 Git 필요)</td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a></td><td>A free Git and Mercurial client for Windows & Mac</td></tr>
            <tr><td><a href="http://www.git-tower.com/">Tower</a></td><td>a Mac OS X Git client</td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a></td><td>윈도와 맥에서 가능한 Git 과 Mercurial용 무료 클라이언트</td></tr>
            <tr><td><a href="http://www.git-tower.com/">Tower</a></td><td>맥 OS X 용 Git 클라이언트</td></tr>
        </tbody>
        </table>
    </div>
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_nl.html
@@ -19,11 +19,11 @@
        Nadat u een commits gepushed heeft, kunt u deze pagina <b>verversen</b> om uw repository te bekijken.
    </div>
        
    <h3><center>Create a new repository on the command-line</center></h3>
    <h3><center>Maak een nieuwe repositorie via de command-line</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Push an existing repository from the command-line</center></h3>
    <h3><center>Push een bestaande repositorie vanaf de command-line</center></h3>
    <pre wicket:id="existingSyntax"></pre>
@@ -31,18 +31,18 @@
        <h2><center>Leer Git</center></h2>
        <p>Als u niet goed weet wat u met deze informatie aan moet, raden we u aan om het <a href="http://book.git-scm.com/nl">Git Community Book</a> te bestuderen voor een beter begrip over hoe u Git kunt gebruiken.</p>
        <h4>Open Source Git Clients</h4>
        <h4>Open Source Git Programma's</h4>
        <table>
        <tbody>
            <tr><td><a href="http://git-scm.com">Git</a></td><td>de officiele, command-line Git</td></tr>
            <tr><td><a href="http://tortoisegit.googlecode.com">TortoiseGit</a></td><td>Windows bestandsverkenner ingetratie (officiele command-line Git is wel nodig)</td></tr>
            <tr><td><a href="http://tortoisegit.googlecode.com">TortoiseGit</a></td><td>Windows bestandsverkenner integratie (officiele command-line Git is wel nodig)</td></tr>
            <tr><td><a href="http://eclipse.org/egit">Eclipse/EGit</a></td><td>Git voor de Eclipse IDE (gebaseerd op JGit, zoals Gitblit)</td></tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a></td><td>C# frontend voor Git met Windows Explorer en Visual Studio integratie</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a></td><td>een Mac OS X Git client</td></tr>
        </tbody>            
        </table>
        <h4>Commercial/Closed-Source Git Clients</h4>
        <h4>Commerciele/Closed-Source Git Programma's</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>Een Java Git, Mercurial, en SVN client applicatie (officiele command-line Git is wel nodig)</td></tr>
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_no.html
New file
@@ -0,0 +1,60 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.3-strict.dtd"
      xml:lang="en"
      lang="en">
<body>
<wicket:extend>
<div class="container">
<div class="markdown">
<div class="row">
    <div class="span10 offset1">
    <h3><center>Tomt Repository</center></h3>
    <div class="alert alert-info">
        <span wicket:id="repository" style="font-weight: bold;">[repository]</span> er et tomt repository som ikke kan vises av Gitblit.
                    <p></p>
                    Vennligst push noen endringer inn til <span wicket:id="pushurl"></span>
                    <hr/>
                    Etter at du har pushet noen endringer, kan du <b>oppfriske</b> denne siden for \u00e5 se repositoriet.
        </div>
    <h3><center>Opprett et nytt repository fra kommandolinjen</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Push et eksisternde repository fra kommandolinjen</center></h3>
    <pre wicket:id="existingSyntax"></pre>
    <div class="span8 offset1">
        <h2><center>L\u00e6r Git</center></h2>
        <p>Hvis du er usikker p\u00e5 hvordan du kan benytte denne informasjonen, vurder \u00e5 lese  <a href="http://book.git-scm.com">Git Community Book</a> eller <a href="http://progit.org/book" target="_blank">Pro Git</a> for \u00e5 f\u00e5 en bedre forst\u00e5else av hvordan du kan bruke Git. </p>
        <h4>Open Source Git Clients</h4>
        <table>
        <tbody>
            <tr><td>a href="http://git-scm.com">Git</a> - den offisielle, kommando-linje git</td></tr>
            <tr><td>a href="http://tortoisegit.googlecode.com">TortoiseGit</a> - Windows filutforsker integrasjon (krever den offisielle kommando-linje git versjonen installert</td></tr>
            <tr><td><a href="http://eclipse.org/egit">Eclipse/EGit</a> - Git for Eclipse IDE (basert p\u00e5 JGit, akkurat som Gitblit er)</tr>
            <tr><td><a href="https://code.google.com/p/gitextensions/">Git Extensions</a> - En C# frontend for Git som integrerer med filutforskeren og Visual Studio.</td></tr>
            <tr><td><a href="http://rowanj.github.io/gitx/">GitX-dev</a> - En  git klient for OS X</td></tr>
        </tbody>
        </table>
        <h4>Commercial/Closed-Source Git Clients</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a> - En Git og Mercurial klient for Windows, Mac, og Linux</td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a> - En gratis Git og Mercurial klient for Windows og Mac</td></tr>
            <tr><td>a href="http://www.git-tower.com/">Tower</a> - En git klient for Mac OS X </td></tr>
        </tbody>
        </table>
    </div>
</div>
</div>
</div>
</div>
</wicket:extend>
</body>
</html>
src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage_zh_CN.html
@@ -20,11 +20,11 @@
        当你推送完毕后你可以 <b>刷新</b> 此页面重新查看您的版本库。
    </div>
        
    <h3><center>Create a new repository on the command-line</center></h3>
    <h3><center>通过命令行创建一个新的版本库</center></h3>
    <pre wicket:id="createSyntax"></pre>
    <h3><center>Push an existing repository from the command-line</center></h3>
    <h3><center>通过命令行推送一个已存在的版本库</center></h3>
    <pre wicket:id="existingSyntax"></pre>
@@ -46,7 +46,7 @@
        <h4>商业/闭源 Git 客户端</h4>
        <table>
        <tbody>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>Java 版本的支持 Git, Mercurial 和 SVN 客户端应用 (需要官方, 命令行 Git 的支持)</td></tr>
            <tr><td><a href="http://www.syntevo.com/smartgithg">SmartGit/Hg</a></td><td>Java 版本的支持 Git, Mercurial 和 SVN 客户端应用 </td></tr>
            <tr><td><a href="http://www.sourcetreeapp.com/">SourceTree</a></td><td>免费的 Mac Git Mercurial 以及 SVN 客户端 and Mercurial</td></tr>
            <tr><td><a href="http://www.git-tower.com/">Tower</a></td><td>Mac OS X Git 客户端</td></tr>
        </tbody>
src/main/java/com/gitblit/wicket/pages/TicketsPage.java
@@ -536,7 +536,13 @@
                item.add(entryPanel);
                final TicketMilestone tm = item.getModelObject();
                PageParameters params = queryParameters(null, tm.name, null, null, null, true, 1);
                String [] states;
                if (tm.isOpen()) {
                    states = TicketsUI.openStatii;
                } else {
                    states = TicketsUI.closedStatii;
                }
                PageParameters params = queryParameters(null, tm.name, states, null, null, true, 1);
                entryPanel.add(new LinkPanel("milestoneName", null, tm.name, TicketsPage.class, params).setRenderBodyOnly(true));
                String css;
src/main/java/com/gitblit/wicket/pages/UserPage.html
@@ -64,8 +64,8 @@
        <form wicket:id="prefsForm">
            <div wicket:id="displayName"></div>
            <div wicket:id="emailAddress"></div>
            <div wicket:id="language"></div>
            <div wicket:id="emailMeOnMyTicketChanges"></div>
            <div wicket:id="language"></div>
            <div wicket:id="transport"></div>
            
            <div class="form-actions"><input class="btn btn-appmenu" type="submit" value="Save" wicket:message="value:gb.save" wicket:id="save" /></div>
src/main/java/com/gitblit/wicket/pages/UserPage.java
@@ -172,9 +172,11 @@
        Form<Void> prefs = new Form<Void>("prefsForm");
        List<Language> languages = Arrays.asList(
                new Language("Deutsch","de"),
                new Language("English","en"),
                new Language("Español", "es"),
                new Language("Français", "fr"),
                new Language("Italiano", "it"),
                new Language("日本語", "ja"),
                new Language("한국말", "ko"),
                new Language("Nederlands", "nl"),
src/main/java/login_de.mkd
New file
@@ -0,0 +1,3 @@
## Bitte melden Sie sich an
Bitte geben Sie Ihre Zugangsdaten ein um auf Gitblit zuzugreifen.
src/main/java/login_it.mkd
New file
@@ -0,0 +1,4 @@
## Login richiesto
Per favore fornisci le tue credenziali per accedere a questo sito Gitblit.
src/main/java/welcome_de.mkd
New file
@@ -0,0 +1,3 @@
## Willkommen bei Gitblit
Eine schnelle und einfache Art und Weise Ihre eigenen [Git](http://www.git-scm.com) Repositories zu hosten.
src/main/java/welcome_it.mkd
New file
@@ -0,0 +1,3 @@
## Benvenuto su Gitblit
Un modo facile e veloce per ospitare o visualizzare i tuoi repository [Git](http://www.git-scm.com).
src/site/administration.mkd
@@ -20,7 +20,7 @@
        federationSets = 
#### Repository Names
Repository names must be case-insensitive-unique but are CASE-SENSITIVE ON CASE-SENSITIVE FILESYSTEMS.  The name must be composed of letters, digits, or `/ _ - . ~`<br/>
Repository names must be case-insensitive-unique but are CASE-SENSITIVE ON CASE-SENSITIVE FILESYSTEMS.  The name must be composed of letters, digits, or `/ _ - . ~ +`<br/>
Whitespace is illegal.
Repositories can be grouped within subfolders.  e.g. *libraries/mycoollib.git* and *libraries/myotherlib.git*
src/site/features.mkd
@@ -60,15 +60,18 @@
- Customizable regular expression substitution for commit messages (i.e. bug or code review link integration)
- Single text file for users configuration
- Translations
    - English
    - Japanese
    - Spanish
    - Polish
    - Korean
    - Brazilian Portuguese
    - Dutch
    - German (de)
    - English (en)
    - Spanish (es)
    - French (fr)
    - Italian (it)
    - Japanese (ja)
    - Korean (ko)
    - Dutch (nl)
    - Norwegian (no)
    - Polish (pl)
    - Brazilian Portuguese (pt_BR)
    - Simplified Chinese (zh_CN)
    - French
## Gitblit GO Features
- Out-of-the-box integrated stack requiring minimal configuration
src/site/plugins_extensions.mkd
@@ -96,7 +96,6 @@
import org.kohsuke.args4j.Option;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.gitblit.models.UserModel;
import com.gitblit.transport.ssh.commands.CommandMetaData;
import com.gitblit.transport.ssh.commands.DispatchCommand;
import com.gitblit.transport.ssh.commands.UsageExample;
src/site/plugins_overview.mkd
@@ -53,7 +53,7 @@
    plugins.registry = http://plugins.gitblit.com/plugins.json
The [registry](http://plugins.gitblit.com/plugins.json) is currently hosted in a [Git repository on Github](https://github.com/gitblit/gitblit-registry).  This git repository is also a [Maven-compatible repository](http://plugins.gitblit.com), which hosts some plugin binaries.
The [default plugins registry](http://plugins.gitblit.com) is currently hosted in a [Git repository on Github](https://github.com/gitblit/gitblit-registry).  You can view the default registry file [here](http://plugins.gitblit.com/plugins.json).  The default plugin registry is also a Maven-2 compatible repository.
### Contributing Plugins to the Default Registry
src/site/roadmap.mkd
@@ -3,7 +3,6 @@
This is not exactly a formal roadmap but it is a priority list of what might be implemented in future releases.  
This list is volatile and may not reflect what will be in the next release.
* **In-Progress**: Integrate an SSH daemon (issue-369)
* Diff should highlight inserted/removed fragment compared to original line
* Respect Gerrit branch permissions, if found (issue 36)
* Add support for Project owners/administrators (ticket-75)
* Add Project create/update pages
* Integrate improvements for git-flow (ticket-55)
src/site/setup_transport_ssh.mkd
@@ -23,14 +23,22 @@
    ssh-keygen
**NOTE:** It is important to note that *ssh-keygen* generates a public/private keypair (e.g. id_rsa and id_rsa.pub).  You want to upload the *public* key, which is denoted by the *.pub* file extension.
#### Uploading your public key from the command-line
Then you can upload your *public* key right from the command-line.
    cat ~/.ssh/id_rsa.pub | ssh -l <username> -p 29418 <hostname> keys add
    cat c:\<userfolder>\.ssh\id_rsa.pub | ssh -l <username> -p 29418 <hostname> keys add
**NOTE:** It is important to note that *ssh-keygen* generates a public/private keypair (e.g. id_rsa and id_rsa.pub).  You want to upload the *public* key, which is denoted by the *.pub* file extension.
#### Uploading your public key through the browser
Once you've done both of those steps you should be able to execute the following command without a password prompt.
1. Navigate to your *profile* page from the dropdown user menu.
2. Click the *SSH Keys* tab and paste your public key into the *Add SSH Key* form.
3. Click the *Save* button
Once you ave uploaded your public key you should be able to execute the following command without a password prompt.
    ssh -l <username> -p 29418 <hostname>
src/site/siteindex.mkd
@@ -1,4 +1,14 @@
<div class="well" style="margin-left:5px;float:right;width:275px;padding: 10px 10px;">
<script>
   (function(d, s, id) {
       var js, fjs = d.getElementsByTagName(s)[0];
       if (d.getElementById(id)) return;
       js = d.createElement(s); js.id = id;
       js.async = true;
       js.src = "//go.jelastic.com/widgets.js";
       fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'jelastic-jssdk'));
</script>
<div style="text-align:center">
<b>Current Release ${project.releaseVersion} (${project.releaseDate})</b><br/><a href="releasenotes.html">release notes</a>
<div style="padding:5px;"><a style="width:175px;text-decoration:none;" class="btn btn-success" href="%GCURL%gitblit-${project.releaseVersion}.zip">Download Gitblit GO (Windows)</a></div>
@@ -7,7 +17,7 @@
<div style="padding:5px;"><a style="width:175px;text-decoration:none;" class="btn btn-primary" href="%GCURL%manager-${project.releaseVersion}.zip">Download Gitblit Manager</a></div>
        <a href='https://bintray.com/gitblit/releases/gitblit/view?source=watch' alt='Get automatic notifications about new "stable" versions'><img src='https://www.bintray.com/docs/images/bintray_badge_color.png'></a>
    </div>
<div data-manifest="http://1c57d83a4c5f3a21ec25c050d4c5e37b.app.jelastic.com/xssu/cross/download/RDYYHABkAFJbUVlMMVU7RUtDARgATExFCEBuGS4jdQJKRUsEDwIBQmNTTEBI" data-width="280" data-theme="flat-blue" data-text="Get it hosted now!" data-tx-empty="Type your email and click the button" data-tx-invalid-email="Invalid email, please check the spelling" data-tx-error="An error has occurred, please try again later" data-tx-success="Check your email" class="je-app" ></div>
    <div style="padding-top:5px;">
    <table class="table condensed-table">
        <tbody>
@@ -46,11 +56,19 @@
Gitblit can be used as a complete Git stack for cloning, pushing, and repository access control.  
Gitblit can be used without any other Git tooling (including actual Git) or it can cooperate with your established tools.
### All Transports
The SSH, HTTP, & GIT protocols are supported and ready-to-go out of the box.
### Issue tracking with branch-based pull requests
Gitblit blends elements of GitHub, BitBucket, and Gerrit to provide a streamlined collaboration workflow based on branches within the primary repository.
### Easy Remote Management
Administrators can create and manage all repositories, user accounts, and teams from the *Web UI*.  
Administrators can create and manage all repositories, user accounts, and teams from the *JSON RPC interface* using the [Gitblit Manager](http://code.google.com/p/gitblit/downloads/detail?name=%MANAGER%) or your own custom tooling. 
Administrators can create and manage all repositories, user accounts, and teams from the *command-line* using the [Powertools plugin](https://github.com/gitblit/gitblit-powertools-plugin).
Administrators can create and manage all repositories, user accounts, and teams from the *command-line* using SSH & the [Powertools plugin](https://github.com/gitblit/gitblit-powertools-plugin).
### Integration with Your Infrastructure
src/site/tickets_replication.mkd
@@ -145,9 +145,9 @@
    migrate-tickets com.gitblit.tickets.RedisTicketService c:\gitblit-data
##### Gitblit WAR/Express
##### Gitblit WAR
Gitblit WAR/Express does not ship with anything other than the WAR, but you can still migrate tickets offline with a little extra effort.
Gitblit WAR does not ship with anything other than the WAR, but you can still migrate tickets offline with a little extra effort.
*Windows*
src/site/tickets_setup.mkd
@@ -109,7 +109,7 @@
#### Milestones
Milestones are a way to group tickets together.  Currently milestones are specified at the repository level and are stored in the repository git config file.  Gitblit's internal architecture has all the methods necessary to maintain milestones, but this functionality is not yet exposed through the web ui.  For now you will have to control milestones manually with a text editor.
Milestones are a way to group tickets together.  Milestones are specified for each repository and are stored in the repository git config file.  Repository owners may create milestones through the web ui in the *Tickets* page on the *Milestones* tab.
    [milestone "v1.5.0"]
        status = Open
src/site/tickets_using.mkd
@@ -59,6 +59,14 @@
    ...add one or more commits...
    git push
### Checking-Out a Named Branch for an Existing Ticket with a Patchset
If you prefer to name your local ticket branches rather than using the default integer ids, you can do this with a little more syntax.
    git checkout -b my_fix --track origin/ticket/{id}
This will create a local branch named *my_fix* which tracks the upstream ticket branch.
### Rewriting a Patchset (amend, rebase, squash)
*Who can rewrite a patchset?*
@@ -76,21 +84,18 @@
### Updating your copy of a rewritten Patchset
If a patchset has been rewritten you can no longer simply *pull* to update.  Let's assume your checkout **does not** have any unshared commits - i.e. it represents the previous patchset.  The simplest way to update your branch to the current patchset is to reset it.
If a patchset has been rewritten you can no longer simply *pull* to update.  Let's assume your checkout **does not** have any unshared commits - i.e. it represents the previous patchset.  The simplest way to update your branch to the current patchset is to reset it using the `-B` checkout flag.
    git fetch && git checkout ticket/{id}
    git reset --hard origin/ticket/{id}
    git fetch && git checkout -B ticket/{id}
If you **do** have unshared commits then you'll could make a new temporary branch and then cherry-pick your changes onto the rewritten patchset.
    git branch oldticket ticket/{id}
    git fetch && git checkout ticket/{id}
    git reset --hard origin/ticket/{id}
    git fetch && git checkout -B ticket/{id}
    git cherry-pick <commitid1> <commitid2>
    git branch -D oldticket
Git is a very flexible tool, there are no doubt several other strategies you could use to resolve this situation.  The above solution is just one way.
### Ticket RefSpecs