feat: Able to check commit message in issue transition rule (OD-2522)

This commit is contained in:
Robin Shen 2025-08-20 21:21:03 +08:00
parent d9f9fa03e6
commit b4ad529e68
10 changed files with 212 additions and 40 deletions

View File

@ -648,8 +648,11 @@ public class DefaultIssueChangeManager extends BaseEntityManager<IssueChange>
ProjectScope projectScope = new ProjectScope(project, true, true);
Map<Long, RevCommit> fixedIssueIds = new HashMap<>();
Repository repository = projectManager.getRepository(projectId);
String commitMessage;
try (RevWalk revWalk = new RevWalk(repository)) {
revWalk.markStart(revWalk.lookupCommit(newCommitId));
var newCommit = revWalk.parseCommit(newCommitId);
commitMessage = newCommit.getFullMessage();
revWalk.markStart(newCommit);
if (oldCommitId.equals(ObjectId.zeroId())) {
/*
* In case a new branch is pushed, we only process new commits not in any existing branches
@ -672,13 +675,16 @@ public class DefaultIssueChangeManager extends BaseEntityManager<IssueChange>
}
}
IssueQueryParseOption option = new IssueQueryParseOption().withCurrentCommitCriteria(true);
for (TransitionSpec transition: getTransitionSpecs()) {
var option = new IssueQueryParseOption().withCurrentCommitCriteria(true);
for (var transition: getTransitionSpecs()) {
if (transition instanceof BranchUpdatedSpec) {
BranchUpdatedSpec branchUpdatedSpec = (BranchUpdatedSpec) transition;
String branches = branchUpdatedSpec.getBranches();
Matcher matcher = new PathMatcher();
if (branches == null || PatternSet.parse(branches).matches(matcher, branchName)) {
var branchUpdatedSpec = (BranchUpdatedSpec) transition;
var branches = branchUpdatedSpec.getBranches();
var commitMessages = branchUpdatedSpec.getCommitMessages();
var branchMatcher = new PathMatcher();
var commitMessagesMatcher = new StringMatcher();
if ((branches == null || PatternSet.parse(branches).matches(branchMatcher, branchName))
&& (commitMessages == null || PatternSet.parse(commitMessages).matches(commitMessagesMatcher, commitMessage))) {
IssueQuery query = IssueQuery.parse(project, branchUpdatedSpec.getIssueQuery(), option, true);
List<Criteria<Issue>> criterias = new ArrayList<>();

View File

@ -21,6 +21,8 @@ public class BranchUpdatedSpec extends AutoSpec {
private String branches;
private String commitMessages;
public BranchUpdatedSpec() {
setIssueQuery(io.onedev.server.search.entity.issue.IssueQuery
.getRuleName(IssueQueryLexer.FixedInCurrentCommit));
@ -38,6 +40,17 @@ public class BranchUpdatedSpec extends AutoSpec {
this.branches = branches;
}
@Editable(order = 300, name = "Applicable Commit Messages", placeholder = "Any commit message", description = "Optionally specify space-separated commit messages "
+ "applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all")
@Patterns
public String getCommitMessages() {
return commitMessages;
}
public void setCommitMessages(String commitMessages) {
this.commitMessages = commitMessages;
}
@SuppressWarnings("unused")
private static List<InputSuggestion> suggestBranches(String matchWith) {
Project project = Project.get();
@ -61,10 +74,19 @@ public class BranchUpdatedSpec extends AutoSpec {
@Override
public String getTriggerDescription() {
if (branches != null)
return MessageFormat.format(_T("code is committed to branches \"{0}\""), branches);
else
return _T("code is committed to any branch");
if (branches != null) {
if (commitMessages != null) {
return MessageFormat.format(_T("code is committed to branches \"{0}\" with message \"{1}\""), branches, commitMessages);
} else {
return MessageFormat.format(_T("code is committed to branches \"{0}\""), branches);
}
} else {
if (commitMessages != null) {
return MessageFormat.format(_T("code is committed with message \"{0}\""), commitMessages);
} else {
return _T("code is committed");
}
}
}
}

View File

@ -81,11 +81,16 @@ public class Translation_de extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>Text suchen</span> <span class='font-size-sm text-muted'>im Standard-Branch</span></div>");
m.put("<i>No Name</i>", "<i>Kein Name</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> zum Schließen");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> zum Bewegen");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> zum Navigieren. <span class=\"keycap\">Esc</span> zum Schließen");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> oder <span class='keycap'>Enter</span> zum Abschließen.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> zum Abschließen.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> zum Gehen</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> zum Suchen</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> Aktivitäten");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> Definieren Sie Job-Geheimnisse, die in der Build-Spezifikation verwendet werden sollen. Geheimnisse mit <b>gleichem Namen</b> können definiert werden. Für einen bestimmten Namen wird das erste autorisierte Geheimnis mit diesem Namen verwendet (zuerst im aktuellen Projekt suchen, dann in übergeordneten Projekten suchen). Beachten Sie, dass Geheimniswerte, die Zeilenumbrüche enthalten oder weniger als <b>%d</b> Zeichen haben, im Build-Log nicht maskiert werden");
@ -264,6 +269,7 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "Ein weiterer Pull-Request ist bereits für diese Änderung geöffnet");
m.put("Any agent", "Beliebiger Agent");
m.put("Any branch", "Beliebiger Branch");
m.put("Any commit message", "Beliebige Commit-Nachricht");
m.put("Any domain", "Beliebige Domäne");
m.put("Any file", "Beliebige Datei");
m.put("Any issue", "Beliebiges Problem");
@ -281,6 +287,7 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Applicable Branches", "Anwendbare Branches");
m.put("Applicable Builds", "Anwendbare Builds");
m.put("Applicable Code Comments", "Anwendbare Code-Kommentare");
m.put("Applicable Commit Messages", "Anwendbare Commit-Nachrichten");
m.put("Applicable Commits", "Anwendbare Commits");
m.put("Applicable Images", "Anwendbare Bilder");
m.put("Applicable Issues", "Anwendbare Probleme");
@ -303,6 +310,8 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Arguments", "Argumente");
m.put("Artifacts", "Artefakte");
m.put("Artifacts to Retrieve", "Zu holende Artefakte");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"Solange eine Funktion über die URL zugänglich ist, können Sie einen Teil der URL eingeben, um zu suchen und zu springen");
m.put("Ascending", "Aufsteigend");
m.put("Assignees", "Zuweisungen");
m.put("Assignees Issue Field", "Zuweisungen im Problemfeld");
@ -692,6 +701,7 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Collapse all", "Alle einklappen");
m.put("Color", "Farbe");
m.put("Columns", "Spalten");
m.put("Command Palette", "Befehls-Palette");
m.put("Commands", "Befehle");
m.put("Comment", "Kommentar");
m.put("Comment Content", "Kommentarinhalt");
@ -2135,6 +2145,7 @@ public class Translation_de extends TranslationResourceBundle {
m.put("No services defined", "Keine Dienste definiert");
m.put("No start/due date", "Kein Start-/Fälligkeitsdatum");
m.put("No step templates defined", "Keine Schrittvorlagen definiert");
m.put("No suggestions", "Keine Vorschläge");
m.put("No tags found", "Keine Tags gefunden");
m.put("No timesheets defined", "Keine Zeiterfassungen definiert");
m.put("No user found with login name or email: ", "Kein Benutzer mit Anmeldenamen oder E-Mail gefunden:");
@ -2437,6 +2448,8 @@ public class Translation_de extends TranslationResourceBundle {
"Optional geben Sie durch Leerzeichen getrennte Zweige an, die für diesen Trigger anwendbar sind. Verwenden Sie '**', '*' oder '?' für <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>Pfad-Wildcard-Abgleich</a>. Präfix mit '-' zum Ausschließen. Lassen Sie das Feld leer für den Standardzweig");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"Optional geben Sie durch Leerzeichen getrennte Zweige an, die überprüft werden sollen. Verwenden Sie '**' oder '*' oder '?' für <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>Pfad-Wildcard-Abgleich</a>. Präfix mit '-' zum Ausschließen. Lassen Sie das Feld leer, um alle Zweige zu entsprechen");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"Optional geben Sie durch Leerzeichen getrennte Commit-Nachrichten an, die für diesen Übergang anwendbar sind. Verwenden Sie '*' oder '?' für Platzhalter. Mit '-' voranstellen, um auszuschließen. Leer lassen, um alle zu matchen");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"Optional geben Sie durch Leerzeichen getrennte Dateien an, die überprüft werden sollen. Verwenden Sie '**', '*' oder '?' für <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>Pfad-Wildcard-Abgleich</a>. Präfix mit '-' zum Ausschließen. Lassen Sie das Feld leer, um alle Dateien zu entsprechen");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Post Url", "Post-URL");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "Präfix-Muster");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"Präfixieren Sie den Titel mit <code>WIP</code> oder <code>[WIP]</code>, um die Pull-Anfrage als in Bearbeitung zu kennzeichnen");
m.put("Prepend", "Voranstellen");
m.put("Preserve Days", "Tage bewahren");
m.put("Preset Commit Message", "Voreingestellte Commit-Nachricht");
@ -2807,6 +2822,8 @@ public class Translation_de extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "Pull-Request ist fehlerhaft: {0}");
m.put("Pull request is merged", "Pull-Request wird zusammengeführt");
m.put("Pull request is opened", "Pull-Request wird geöffnet");
m.put("Pull request is still a work in progress", "Pull-Anfrage ist noch in Bearbeitung");
m.put("Pull request is work in progress", "Pull-Anfrage ist in Bearbeitung");
m.put("Pull request list", "Pull-Request-Liste");
m.put("Pull request merge", "Pull-Request-Zusammenführung");
m.put("Pull request not exist or access denied", "Pull-Request existiert nicht oder Zugriff verweigert");
@ -3891,8 +3908,7 @@ public class Translation_de extends TranslationResourceBundle {
"Dieser Schritt kann nur von einem Docker-fähigen Executor ausgeführt werden. Er läuft unter <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>Job-Arbeitsbereich</a>");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"Dieser Schritt veröffentlicht die angegebenen Dateien, um als Projekt-Webseite bereitgestellt zu werden. Die Projekt-Webseite kann öffentlich über <code>http://&lt;onedev base url&gt;/path/to/project/~site</code> aufgerufen werden");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"Dieser Schritt zieht die angegebenen Refs vom Remote. Aus Sicherheitsgründen darf er nur vom Standard-Branch ausgeführt werden");
m.put("This step pulls specified refs from remote", "Dieser Schritt zieht die angegebenen Refs vom Remote");
m.put("This step pushes current commit to same ref on remote", "Dieser Schritt pusht den aktuellen Commit auf denselben Ref im Remote");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"Dieser Schritt richtet den Renovate-Cache ein. Platzieren Sie ihn vor dem Renovate-Schritt, wenn Sie ihn verwenden möchten");
@ -4371,8 +4387,10 @@ public class Translation_de extends TranslationResourceBundle {
m.put("cluster:lead", "Leiter");
m.put("cmd-k to show command palette", "cmd-k, um die Befehlsübersicht anzuzeigen");
m.put("code commit", "Code-Commit");
m.put("code is committed to any branch", "Code wird in jeden Zweig eingetragen");
m.put("code is committed", "Code ist committet");
m.put("code is committed to branches \"{0}\"", "Code wird in die Zweige \"{0}\" eingetragen");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "Code ist in die Zweige \"{0}\" mit der Nachricht \"{1}\" committet");
m.put("code is committed with message \"{0}\"", "Code ist mit der Nachricht \"{0}\" committet");
m.put("commit message contains", "Commit-Nachricht enthält");
m.put("commits", "Commits");
m.put("committed by", "eingetragen von");

View File

@ -81,11 +81,16 @@ public class Translation_es extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>Buscar Texto</span> <span class='font-size-sm text-muted'>en la rama predeterminada</span></div>");
m.put("<i>No Name</i>", "<i>Sin Nombre</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> para cerrar");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> para mover");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> para navegar. <span class=\"keycap\">Esc</span> para cerrar");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> o <span class='keycap'>Enter</span> para completar.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> para completar.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> para ir</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> para buscar</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> actividades");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> Defina secretos de trabajo para ser usados en la especificación de construcción. Se pueden definir secretos con <b>el mismo nombre</b>. Para un nombre en particular, se usará el primer secreto autorizado con ese nombre (busque primero en el proyecto actual, luego en los proyectos principales). Tenga en cuenta que el valor del secreto que contenga saltos de línea o menos de <b>%d</b> caracteres no será enmascarado en el registro de construcción");
@ -264,6 +269,7 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "Ya hay una solicitud de extracción abierta para este cambio");
m.put("Any agent", "Cualquier agente");
m.put("Any branch", "Cualquier rama");
m.put("Any commit message", "Cualquier mensaje de commit");
m.put("Any domain", "Cualquier dominio");
m.put("Any file", "Cualquier archivo");
m.put("Any issue", "Cualquier problema");
@ -281,6 +287,7 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Applicable Branches", "Ramas aplicables");
m.put("Applicable Builds", "Compilaciones aplicables");
m.put("Applicable Code Comments", "Comentarios de código aplicables");
m.put("Applicable Commit Messages", "Mensajes de Commit Aplicables");
m.put("Applicable Commits", "Commits aplicables");
m.put("Applicable Images", "Imágenes aplicables");
m.put("Applicable Issues", "Problemas aplicables");
@ -303,6 +310,8 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Arguments", "Argumentos");
m.put("Artifacts", "Artefactos");
m.put("Artifacts to Retrieve", "Artefactos para recuperar");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"Siempre que una función pueda ser accedida a través de una url, puedes ingresar parte de la url para coincidir y saltar");
m.put("Ascending", "Ascendente");
m.put("Assignees", "Asignados");
m.put("Assignees Issue Field", "Campo de problema de asignados");
@ -692,6 +701,7 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Collapse all", "Colapsar todo");
m.put("Color", "Color");
m.put("Columns", "Columnas");
m.put("Command Palette", "Paleta de Comandos");
m.put("Commands", "Comandos");
m.put("Comment", "Comentario");
m.put("Comment Content", "Contenido del Comentario");
@ -2135,6 +2145,7 @@ public class Translation_es extends TranslationResourceBundle {
m.put("No services defined", "No hay servicios definidos");
m.put("No start/due date", "No hay fecha de inicio/vencimiento");
m.put("No step templates defined", "No hay plantillas de pasos definidas");
m.put("No suggestions", "Sin sugerencias");
m.put("No tags found", "No se encontraron etiquetas");
m.put("No timesheets defined", "No hay hojas de tiempo definidas");
m.put("No user found with login name or email: ", "No se encontró usuario con nombre de inicio de sesión o correo electrónico:");
@ -2437,6 +2448,8 @@ public class Translation_es extends TranslationResourceBundle {
"Opcionalmente especifique ramas separadas por espacio aplicables para este disparador. Use '**', '*' o '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>coincidencia de comodines de ruta</a>. Prefijo con '-' para excluir. Déjelo vacío para la rama predeterminada.");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"Opcionalmente especifique ramas separadas por espacio para verificar. Use '**' o '*' o '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>coincidencia de comodines de ruta</a>. Prefijo con '-' para excluir. Déjelo vacío para coincidir con todas las ramas.");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"Opcionalmente especifica mensajes de commit separados por espacios aplicables para esta transición. Usa '*' o '?' para coincidencia de comodines. Prefija con '-' para excluir. Deja vacío para coincidir con todos");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"Opcionalmente especifique archivos separados por espacio para verificar. Use '**', '*' o '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>coincidencia de comodines de ruta</a>. Prefijo con '-' para excluir. Déjelo vacío para coincidir con todos los archivos.");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Post Url", "URL de publicación");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "Patrón de prefijo");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"Prefija el título con <code>WIP</code> o <code>[WIP]</code> para marcar la solicitud de extracción como trabajo en progreso");
m.put("Prepend", "Anteponer");
m.put("Preserve Days", "Preservar días");
m.put("Preset Commit Message", "Mensaje de confirmación preestablecido");
@ -2807,6 +2822,8 @@ public class Translation_es extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "La solicitud de extracción tiene un error: {0}");
m.put("Pull request is merged", "La solicitud de extracción se fusiona");
m.put("Pull request is opened", "La solicitud de extracción se abre");
m.put("Pull request is still a work in progress", "La solicitud de extracción aún está en progreso");
m.put("Pull request is work in progress", "La solicitud de extracción está en progreso");
m.put("Pull request list", "Lista de solicitudes de extracción");
m.put("Pull request merge", "Fusión de solicitudes de extracción");
m.put("Pull request not exist or access denied", "La solicitud de extracción no existe o el acceso está denegado");
@ -3891,8 +3908,7 @@ public class Translation_es extends TranslationResourceBundle {
"Este paso solo puede ser ejecutado por un ejecutor compatible con Docker. Se ejecuta bajo <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>el espacio de trabajo del trabajo</a>");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"Este paso publica los archivos especificados para ser servidos como sitio web del proyecto. El sitio web del proyecto puede ser accedido públicamente a través de <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"Este paso extrae las referencias especificadas desde el remoto. Por razones de seguridad, solo se permite ejecutarlo desde la rama predeterminada");
m.put("This step pulls specified refs from remote", "Este paso extrae las referencias especificadas del remoto");
m.put("This step pushes current commit to same ref on remote", "Este paso empuja el commit actual a la misma referencia en el remoto");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"Este paso configura el caché de Renovate. Colóquelo antes del paso de Renovate si desea usarlo");
@ -4371,8 +4387,10 @@ public class Translation_es extends TranslationResourceBundle {
m.put("cluster:lead", "líder");
m.put("cmd-k to show command palette", "cmd-k para mostrar el paleta de comandos");
m.put("code commit", "commit de código");
m.put("code is committed to any branch", "el código se compromete a cualquier rama");
m.put("code is committed", "el código está comprometido");
m.put("code is committed to branches \"{0}\"", "el código se compromete a las ramas \"{0}\"");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "el código está comprometido en las ramas \"{0}\" con el mensaje \"{1}\"");
m.put("code is committed with message \"{0}\"", "el código está comprometido con el mensaje \"{0}\"");
m.put("commit message contains", "el mensaje del commit contiene");
m.put("commits", "commits");
m.put("committed by", "comprometido por");

View File

@ -81,11 +81,16 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>Rechercher du texte</span> <span class='font-size-sm text-muted'>dans la branche par défaut</span></div>");
m.put("<i>No Name</i>", "<i>Pas de nom</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> pour fermer");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> pour déplacer");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> pour naviguer. <span class=\"keycap\">Esc</span> pour fermer");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> ou <span class='keycap'>Entrée</span> pour compléter.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> pour compléter.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> pour aller</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> pour rechercher</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> activités");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> Définir les secrets de tâche à utiliser dans la spécification de build. Les secrets avec <b>le même nom</b> peuvent être définis. Pour un nom particulier, le premier secret autorisé avec ce nom sera utilisé (recherche dans le projet actuel d'abord, puis dans les projets parents). Notez que la valeur du secret contenant des sauts de ligne ou moins de <b>%d</b> caractères ne sera pas masquée dans le journal de build");
@ -264,6 +269,7 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "Une autre pull request est déjà ouverte pour ce changement");
m.put("Any agent", "N'importe quel agent");
m.put("Any branch", "N'importe quelle branche");
m.put("Any commit message", "N'importe quel message de commit");
m.put("Any domain", "N'importe quel domaine");
m.put("Any file", "N'importe quel fichier");
m.put("Any issue", "N'importe quel problème");
@ -281,6 +287,7 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Applicable Branches", "Branches applicables");
m.put("Applicable Builds", "Constructions applicables");
m.put("Applicable Code Comments", "Commentaires de code applicables");
m.put("Applicable Commit Messages", "Messages de commit applicables");
m.put("Applicable Commits", "Commits applicables");
m.put("Applicable Images", "Images applicables");
m.put("Applicable Issues", "Problèmes applicables");
@ -303,6 +310,8 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Arguments", "Arguments");
m.put("Artifacts", "Artefacts");
m.put("Artifacts to Retrieve", "Artefacts à récupérer");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"Tant qu'une fonctionnalité est accessible via une URL, vous pouvez saisir une partie de l'URL pour correspondre et sauter");
m.put("Ascending", "Ascendant");
m.put("Assignees", "Assignés");
m.put("Assignees Issue Field", "Champ des assignés du problème");
@ -692,6 +701,7 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Collapse all", "Réduire tout");
m.put("Color", "Couleur");
m.put("Columns", "Colonnes");
m.put("Command Palette", "Palette de commandes");
m.put("Commands", "Commandes");
m.put("Comment", "Commentaire");
m.put("Comment Content", "Contenu du commentaire");
@ -2135,6 +2145,7 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("No services defined", "Aucun service défini");
m.put("No start/due date", "Aucune date de début/d'échéance");
m.put("No step templates defined", "Aucun modèle d'étape défini");
m.put("No suggestions", "Aucune suggestion");
m.put("No tags found", "Aucune étiquette trouvée");
m.put("No timesheets defined", "Aucune feuille de temps définie");
m.put("No user found with login name or email: ", "Aucun utilisateur trouvé avec le nom de connexion ou l'e-mail :");
@ -2437,6 +2448,8 @@ public class Translation_fr extends TranslationResourceBundle {
"Spécifiez éventuellement les branches séparées par des espaces applicables à ce déclencheur. Utilisez '**', '*' ou '?' pour <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la correspondance de modèle de chemin</a>. Préfixez avec '-' pour exclure. Laissez vide pour la branche par défaut.");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"Spécifiez éventuellement les branches séparées par des espaces à vérifier. Utilisez '**' ou '*' ou '?' pour <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la correspondance de modèle de chemin</a>. Préfixez avec '-' pour exclure. Laissez vide pour correspondre à toutes les branches.");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"Spécifiez éventuellement des messages de commit séparés par des espaces applicables pour cette transition. Utilisez '*' ou '?' pour une correspondance générique. Préfixez avec '-' pour exclure. Laissez vide pour correspondre à tous");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"Spécifiez éventuellement les fichiers séparés par des espaces à vérifier. Utilisez '**', '*' ou '?' pour <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la correspondance de modèle de chemin</a>. Préfixez avec '-' pour exclure. Laissez vide pour correspondre à tous les fichiers.");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Post Url", "URL de publication");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "Modèle de préfixe");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"Préfixez le titre avec <code>WIP</code> ou <code>[WIP]</code> pour marquer la pull request comme en cours");
m.put("Prepend", "Ajouter au début");
m.put("Preserve Days", "Conserver les jours");
m.put("Preset Commit Message", "Message de commit prédéfini");
@ -2807,6 +2822,8 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "Le pull request est en erreur : {0}");
m.put("Pull request is merged", "Le pull request est fusionné");
m.put("Pull request is opened", "Le pull request est ouvert");
m.put("Pull request is still a work in progress", "La pull request est encore en cours");
m.put("Pull request is work in progress", "La pull request est en cours");
m.put("Pull request list", "Liste des pull requests");
m.put("Pull request merge", "Fusion du pull request");
m.put("Pull request not exist or access denied", "Le pull request n'existe pas ou l'accès est refusé");
@ -3891,8 +3908,7 @@ public class Translation_fr extends TranslationResourceBundle {
"Cette étape ne peut être exécutée que par un exécuteur compatible avec Docker. Elle s'exécute sous <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>l'espace de travail de la tâche</a>");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"Cette étape publie les fichiers spécifiés pour être servis comme site web du projet. Le site web du projet peut être accessible publiquement via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"Cette étape tire les références spécifiées depuis le distant. Pour des raisons de sécurité, elle est uniquement autorisée à s'exécuter depuis la branche par défaut");
m.put("This step pulls specified refs from remote", "Cette étape extrait les références spécifiées depuis le distant");
m.put("This step pushes current commit to same ref on remote", "Cette étape pousse le commit actuel vers la même référence sur le distant");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"Cette étape configure le cache Renovate. Placez-la avant l'étape Renovate si vous souhaitez l'utiliser");
@ -4371,8 +4387,10 @@ public class Translation_fr extends TranslationResourceBundle {
m.put("cluster:lead", "chef");
m.put("cmd-k to show command palette", "cmd-k pour afficher la palette de commandes");
m.put("code commit", "commit de code");
m.put("code is committed to any branch", "le code est engagé sur n'importe quelle branche");
m.put("code is committed", "le code est commité");
m.put("code is committed to branches \"{0}\"", "le code est engagé sur les branches \"{0}\"");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "le code est commité sur les branches \"{0}\" avec le message \"{1}\"");
m.put("code is committed with message \"{0}\"", "le code est commité avec le message \"{0}\"");
m.put("commit message contains", "le message de commit contient");
m.put("commits", "commits");
m.put("committed by", "engagé par");

View File

@ -81,11 +81,16 @@ public class Translation_it extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>Cerca testo</span> <span class='font-size-sm text-muted'>nel branch predefinito</span></div>");
m.put("<i>No Name</i>", "<i>Nessun nome</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> per chiudere");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> per muovere");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> per navigare. <span class=\"keycap\">Esc</span> per chiudere");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> o <span class='keycap'>Enter</span> per completare.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> per completare.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> per andare</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> per cercare</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> attività");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> Definisci i segreti del lavoro da utilizzare nella specifica di build. I segreti con <b>lo stesso nome</b> possono essere definiti. Per un nome particolare, verrà utilizzato il primo segreto autorizzato con quel nome (cerca prima nel progetto corrente, poi nei progetti genitori). Nota che il valore del segreto contenente interruzioni di riga o meno di <b>%d</b> caratteri non sarà mascherato nel log di build");
@ -264,6 +269,7 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "Un'altra pull request già aperta per questa modifica");
m.put("Any agent", "Qualsiasi agente");
m.put("Any branch", "Qualsiasi branch");
m.put("Any commit message", "Qualsiasi messaggio di commit");
m.put("Any domain", "Qualsiasi dominio");
m.put("Any file", "Qualsiasi file");
m.put("Any issue", "Qualsiasi problema");
@ -281,6 +287,7 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Applicable Branches", "Branch applicabili");
m.put("Applicable Builds", "Build applicabili");
m.put("Applicable Code Comments", "Commenti al codice applicabili");
m.put("Applicable Commit Messages", "Messaggi di Commit Applicabili");
m.put("Applicable Commits", "Commit applicabili");
m.put("Applicable Images", "Immagini applicabili");
m.put("Applicable Issues", "Problemi applicabili");
@ -303,6 +310,8 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Arguments", "Argomenti");
m.put("Artifacts", "Artefatti");
m.put("Artifacts to Retrieve", "Artefatti da recuperare");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"Finché una funzionalità è accessibile tramite url, puoi inserire parte dell'url per corrispondere e saltare");
m.put("Ascending", "Ascendente");
m.put("Assignees", "Assegnatari");
m.put("Assignees Issue Field", "Campo problema assegnatari");
@ -692,6 +701,7 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Collapse all", "Comprimi tutto");
m.put("Color", "Colore");
m.put("Columns", "Colonne");
m.put("Command Palette", "Palette dei Comandi");
m.put("Commands", "Comandi");
m.put("Comment", "Commento");
m.put("Comment Content", "Contenuto del commento");
@ -2135,6 +2145,7 @@ public class Translation_it extends TranslationResourceBundle {
m.put("No services defined", "Nessun servizio definito");
m.put("No start/due date", "Nessuna data di inizio/scadenza");
m.put("No step templates defined", "Nessun modello di step definito");
m.put("No suggestions", "Nessun suggerimento");
m.put("No tags found", "Nessun tag trovato");
m.put("No timesheets defined", "Nessun foglio ore definito");
m.put("No user found with login name or email: ", "Nessun utente trovato con nome di login o email:");
@ -2437,6 +2448,8 @@ public class Translation_it extends TranslationResourceBundle {
"Specifica facoltativamente i rami separati da spazio applicabili per questo trigger. Usa '**', '*' o '?' per <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la corrispondenza dei modelli di percorso</a>. Prefissa con '-' per escludere. Lascia vuoto per il ramo predefinito");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"Specifica facoltativamente i rami separati da spazio da controllare. Usa '**' o '*' o '?' per <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la corrispondenza dei modelli di percorso</a>. Prefissa con '-' per escludere. Lascia vuoto per corrispondere a tutti i rami");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"Specifica facoltativamente messaggi di commit separati da spazi applicabili per questa transizione. Usa '*' o '?' per corrispondenza jolly. Prefissa con '-' per escludere. Lascia vuoto per corrispondere a tutti");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"Specifica facoltativamente i file separati da spazio da controllare. Usa '**', '*' o '?' per <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>la corrispondenza dei modelli di percorso</a>. Prefissa con '-' per escludere. Lascia vuoto per corrispondere a tutti i file");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Post Url", "URL del post");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "Modello di prefisso");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"Prefissa il titolo con <code>WIP</code> o <code>[WIP]</code> per contrassegnare la pull request come lavoro in corso");
m.put("Prepend", "Prependi");
m.put("Preserve Days", "Preserva giorni");
m.put("Preset Commit Message", "Messaggio di commit preimpostato");
@ -2807,6 +2822,8 @@ public class Translation_it extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "La pull request è in errore: {0}");
m.put("Pull request is merged", "La pull request è stata unita");
m.put("Pull request is opened", "La pull request è stata aperta");
m.put("Pull request is still a work in progress", "La pull request è ancora un lavoro in corso");
m.put("Pull request is work in progress", "La pull request è un lavoro in corso");
m.put("Pull request list", "Elenco delle pull request");
m.put("Pull request merge", "Unione della pull request");
m.put("Pull request not exist or access denied", "La pull request non esiste o l'accesso è negato");
@ -3891,8 +3908,7 @@ public class Translation_it extends TranslationResourceBundle {
"Questo step può essere eseguito solo da un executor compatibile con docker. Viene eseguito sotto <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>workspace del lavoro</a>");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"Questo step pubblica i file specificati per essere serviti come sito web del progetto. Il sito web del progetto può essere accessibile pubblicamente tramite <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"Questo step recupera i ref specificati dal remoto. Per motivi di sicurezza, è consentito eseguirlo solo dal branch predefinito");
m.put("This step pulls specified refs from remote", "Questo passaggio estrae i ref specificati dal remoto");
m.put("This step pushes current commit to same ref on remote", "Questo step spinge il commit corrente allo stesso ref sul remoto");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"Questo step configura il cache di Renovate. Posizionalo prima dello step di Renovate se desideri utilizzarlo");
@ -4371,8 +4387,10 @@ public class Translation_it extends TranslationResourceBundle {
m.put("cluster:lead", "lead");
m.put("cmd-k to show command palette", "cmd-k per mostrare la palette dei comandi");
m.put("code commit", "commit di codice");
m.put("code is committed to any branch", "il codice è stato commesso su qualsiasi branch");
m.put("code is committed", "il codice è stato committato");
m.put("code is committed to branches \"{0}\"", "il codice è stato commesso sui branch \"{0}\"");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "il codice è stato committato nei rami \"{0}\" con il messaggio \"{1}\"");
m.put("code is committed with message \"{0}\"", "il codice è stato committato con il messaggio \"{0}\"");
m.put("commit message contains", "il messaggio del commit contiene");
m.put("commits", "commit");
m.put("committed by", "commesso da");

View File

@ -81,11 +81,16 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>テキストを検索</span> <span class='font-size-sm text-muted'>デフォルトブランチ内</span></div>");
m.put("<i>No Name</i>", "<i>名前なし</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> で閉じる");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> で移動");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> でナビゲートします。<span class=\"keycap\">Esc</span> で閉じます");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> または <span class='keycap'>Enter</span> で完了します。");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> で完了します。");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> で進む</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> で検索</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> アクティビティ");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> ビルド仕様で使用するジョブシークレットを定義します。同じ<b>名前</b>のシークレットを定義できます。特定の名前については、その名前で最初に認可されたシークレットが使用されます(まず現在のプロジェクトで検索し、次に親プロジェクトで検索します)。行の改行を含むか、<b>%d</b>文字未満のシークレット値はビルドログでマスクされませんので注意してください");
@ -264,6 +269,7 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "この変更に対するプルリクエストはすでに開かれています");
m.put("Any agent", "任意のエージェント");
m.put("Any branch", "任意のブランチ");
m.put("Any commit message", "任意のコミットメッセージ");
m.put("Any domain", "任意のドメイン");
m.put("Any file", "任意のファイル");
m.put("Any issue", "任意の課題");
@ -281,6 +287,7 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Applicable Branches", "適用可能なブランチ");
m.put("Applicable Builds", "適用可能なビルド");
m.put("Applicable Code Comments", "適用可能なコードコメント");
m.put("Applicable Commit Messages", "適用可能なコミットメッセージ");
m.put("Applicable Commits", "適用可能なコミット");
m.put("Applicable Images", "適用可能な画像");
m.put("Applicable Issues", "適用可能な課題");
@ -303,6 +310,8 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Arguments", "引数");
m.put("Artifacts", "アーティファクト");
m.put("Artifacts to Retrieve", "取得するアーティファクト");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"機能がURLでアクセス可能であれば、URLの一部を入力して一致させてジャンプできます");
m.put("Ascending", "昇順");
m.put("Assignees", "担当者");
m.put("Assignees Issue Field", "担当者課題フィールド");
@ -692,6 +701,7 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Collapse all", "すべて折りたたむ");
m.put("Color", "");
m.put("Columns", "");
m.put("Command Palette", "コマンドパレット");
m.put("Commands", "コマンド");
m.put("Comment", "コメント");
m.put("Comment Content", "コメント内容");
@ -2135,6 +2145,7 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("No services defined", "定義されたサービスなし");
m.put("No start/due date", "開始/期限日なし");
m.put("No step templates defined", "定義されたステップテンプレートなし");
m.put("No suggestions", "提案はありません");
m.put("No tags found", "タグが見つかりません");
m.put("No timesheets defined", "定義されたタイムシートなし");
m.put("No user found with login name or email: ", "ログイン名またはメールでユーザーが見つかりません:");
@ -2437,6 +2448,8 @@ public class Translation_ja extends TranslationResourceBundle {
"オプションで、このトリガーに適用されるスペース区切りのブランチを指定してください。<a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>パスワイルドカードマッチ</a>には'**'、'*'または'?'を使用してください。'-'で除外を指定してください。デフォルトブランチの場合は空のままにしてください。");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"オプションで、チェックするスペース区切りのブランチを指定してください。<a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>パスワイルドカードマッチ</a>には'**'、'*'または'?'を使用してください。'-'で除外を指定してください。すべてのブランチに一致する場合は空のままにしてください。");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"この遷移に適用可能なスペース区切りのコミットメッセージを任意で指定します。ワイルドカードマッチには '*' または '?' を使用します。除外するには '-' をプレフィックスに付けます。すべてに一致させるには空のままにします");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"オプションで、チェックするスペース区切りのファイルを指定してください。<a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>パスワイルドカードマッチ</a>には'**'、'*'または'?'を使用してください。'-'で除外を指定してください。すべてのファイルに一致する場合は空のままにしてください。");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Post Url", "投稿URL");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "プレフィックスパターン");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"プルリクエストを作業中としてマークするには、タイトルに <code>WIP</code> または <code>[WIP]</code> を付けてください");
m.put("Prepend", "追加");
m.put("Preserve Days", "保持日数");
m.put("Preset Commit Message", "プリセットコミットメッセージ");
@ -2807,6 +2822,8 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "プルリクエストにエラーがあります: {0}");
m.put("Pull request is merged", "プルリクエストがマージされました");
m.put("Pull request is opened", "プルリクエストがオープンされました");
m.put("Pull request is still a work in progress", "プルリクエストはまだ作業中です");
m.put("Pull request is work in progress", "プルリクエストは作業中です");
m.put("Pull request list", "プルリクエスト一覧");
m.put("Pull request merge", "プルリクエストのマージ");
m.put("Pull request not exist or access denied", "プルリクエストが存在しないか、アクセスが拒否されました");
@ -3891,8 +3908,7 @@ public class Translation_ja extends TranslationResourceBundle {
"このステップはDocker対応エグゼキュータによってのみ実行可能です。<a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>ジョブワークスペース</a>で実行されます");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"このステップは指定されたファイルをプロジェクトウェブサイトとして公開します。プロジェクトウェブサイトは<code>http://&lt;onedev base url&gt;/path/to/project/~site</code>で公開アクセス可能です");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"このステップはリモートから指定されたリファレンスをプルします。セキュリティ上の理由から、デフォルトブランチからのみ実行が許可されています");
m.put("This step pulls specified refs from remote", "このステップでは、指定されたリファレンスをリモートからプルします");
m.put("This step pushes current commit to same ref on remote", "このステップは現在のコミットをリモートの同じリファレンスにプッシュします");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"このステップはRenovateキャッシュをセットアップします。Renovateステップの前に配置すると使用できます");
@ -4371,8 +4387,10 @@ public class Translation_ja extends TranslationResourceBundle {
m.put("cluster:lead", "リード");
m.put("cmd-k to show command palette", "cmd-kでコマンドパレットを表示");
m.put("code commit", "コードコミット");
m.put("code is committed to any branch", "任意のブランチにコードがコミットされる");
m.put("code is committed", "コードがコミットされました");
m.put("code is committed to branches \"{0}\"", "ブランチ「{0}」にコードがコミットされる");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "コードがブランチ \"{0}\" にメッセージ \"{1}\" でコミットされました");
m.put("code is committed with message \"{0}\"", "コードがメッセージ \"{0}\" でコミットされました");
m.put("commit message contains", "コミットメッセージに含まれる");
m.put("commits", "コミット");
m.put("committed by", "作成者");

View File

@ -81,11 +81,16 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>텍스트 검색</span> <span class='font-size-sm text-muted'>기본 브랜치에서</span></div>");
m.put("<i>No Name</i>", "<i>이름 없음</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> 닫기");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> 이동");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span>로 탐색합니다. <span class=\"keycap\">Esc</span>로 닫습니다");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> 또는 <span class='keycap'>Enter</span>로 완료합니다.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span>으로 완료합니다.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> 이동</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> 검색</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> 활동");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> 빌드 사양에서 사용할 작업 비밀을 정의하세요. <b>같은 이름</b>의 비밀을 정의할 수 있습니다. 특정 이름에 대해, 해당 이름으로 승인된 첫 번째 비밀이 사용됩니다(현재 프로젝트에서 먼저 검색한 후 상위 프로젝트에서 검색). 비밀 값에 줄 바꿈이 포함되거나 <b>%d</b>자 미만인 경우 빌드 로그에서 마스킹되지 않습니다");
@ -264,6 +269,7 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "이 변경에 대한 다른 풀 요청이 이미 열려 있습니다");
m.put("Any agent", "모든 에이전트");
m.put("Any branch", "모든 브랜치");
m.put("Any commit message", "커밋 메시지");
m.put("Any domain", "모든 도메인");
m.put("Any file", "모든 파일");
m.put("Any issue", "모든 이슈");
@ -281,6 +287,7 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Applicable Branches", "적용 가능한 브랜치");
m.put("Applicable Builds", "적용 가능한 빌드");
m.put("Applicable Code Comments", "적용 가능한 코드 댓글");
m.put("Applicable Commit Messages", "적용 가능한 커밋 메시지");
m.put("Applicable Commits", "적용 가능한 커밋");
m.put("Applicable Images", "적용 가능한 이미지");
m.put("Applicable Issues", "적용 가능한 이슈");
@ -303,6 +310,8 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Arguments", "인수");
m.put("Artifacts", "아티팩트");
m.put("Artifacts to Retrieve", "검색할 아티팩트");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"기능이 URL을 통해 접근 가능하면 URL의 일부를 입력하여 일치하고 이동할 수 있습니다");
m.put("Ascending", "오름차순");
m.put("Assignees", "담당자");
m.put("Assignees Issue Field", "담당자 이슈 필드");
@ -692,6 +701,7 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Collapse all", "모두 축소");
m.put("Color", "색상");
m.put("Columns", "");
m.put("Command Palette", "명령 팔레트");
m.put("Commands", "명령어");
m.put("Comment", "댓글");
m.put("Comment Content", "댓글 내용");
@ -2135,6 +2145,7 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("No services defined", "정의된 서비스 없음");
m.put("No start/due date", "시작/마감일 없음");
m.put("No step templates defined", "정의된 단계 템플릿 없음");
m.put("No suggestions", "제안 없음");
m.put("No tags found", "태그 없음");
m.put("No timesheets defined", "정의된 근무 시간표 없음");
m.put("No user found with login name or email: ", "로그인 이름 또는 이메일로 사용자를 찾을 수 없습니다:");
@ -2437,6 +2448,8 @@ public class Translation_ko extends TranslationResourceBundle {
"선택적으로 이 트리거에 적용 가능한 공백으로 구분된 브랜치를 지정하세요. <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>경로 와일드카드 매칭</a>을 위해 '**', '*' 또는 '?'를 사용하세요. 제외하려면 '-'로 접두어를 붙이세요. 기본 브랜치에 대해 비워 두세요.");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"선택적으로 확인할 공백으로 구분된 브랜치를 지정하세요. <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>경로 와일드카드 매칭</a>을 위해 '**', '*' 또는 '?'를 사용하세요. 제외하려면 '-'로 접두어를 붙이세요. 모든 브랜치를 일치시키려면 비워 두세요.");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"이 전환에 적용 가능한 공백으로 구분된 커밋 메시지를 선택적으로 지정하십시오. 와일드카드 일치를 위해 '*' 또는 '?'를 사용하십시오. 제외하려면 '-'로 시작하십시오. 모두 일치시키려면 비워 두십시오");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"선택적으로 확인할 공백으로 구분된 파일을 지정하세요. <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>경로 와일드카드 매칭</a>을 위해 '**', '*' 또는 '?'를 사용하세요. 제외하려면 '-'로 접두어를 붙이세요. 모든 파일을 일치시키려면 비워 두세요.");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Post Url", "게시 URL");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "접두사 패턴");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"제목에 <code>WIP</code> 또는 <code>[WIP]</code>를 접두사로 추가하여 풀 리퀘스트를 진행 중인 작업으로 표시하십시오");
m.put("Prepend", "앞에 추가");
m.put("Preserve Days", "보존 일수");
m.put("Preset Commit Message", "미리 설정된 커밋 메시지");
@ -2807,6 +2822,8 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "풀 리퀘스트 오류 발생: {0}");
m.put("Pull request is merged", "풀 리퀘스트가 병합됨");
m.put("Pull request is opened", "풀 리퀘스트가 열림");
m.put("Pull request is still a work in progress", "풀 리퀘스트가 아직 진행 중입니다");
m.put("Pull request is work in progress", "풀 리퀘스트가 진행 중입니다");
m.put("Pull request list", "풀 리퀘스트 목록");
m.put("Pull request merge", "풀 리퀘스트 병합");
m.put("Pull request not exist or access denied", "풀 리퀘스트가 존재하지 않거나 접근이 거부됨");
@ -3891,8 +3908,7 @@ public class Translation_ko extends TranslationResourceBundle {
"이 단계는 Docker를 인식하는 실행자만 실행할 수 있습니다. <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>작업 워크스페이스</a>에서 실행됩니다");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"이 단계는 지정된 파일을 프로젝트 웹 사이트로 제공하도록 게시합니다. 프로젝트 웹 사이트는 <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>를 통해 공개적으로 액세스할 수 있습니다");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"이 단계는 원격에서 지정된 참조를 가져옵니다. 보안상의 이유로 기본 브랜치에서만 실행이 허용됩니다");
m.put("This step pulls specified refs from remote", "이 단계는 원격에서 지정된 참조를 가져옵니다");
m.put("This step pushes current commit to same ref on remote", "이 단계는 현재 커밋을 원격의 동일한 참조로 푸시합니다");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"이 단계는 Renovate 캐시를 설정합니다. Renovate 단계를 사용하려면 이 단계를 그 전에 배치하세요");
@ -4371,8 +4387,10 @@ public class Translation_ko extends TranslationResourceBundle {
m.put("cluster:lead", "리드");
m.put("cmd-k to show command palette", "cmd-k를 눌러 명령 팔레트를 표시하세요");
m.put("code commit", "코드 커밋");
m.put("code is committed to any branch", "어떤 브랜치에 코드가 커밋됨");
m.put("code is committed", "코드가 커밋되었습니다");
m.put("code is committed to branches \"{0}\"", "브랜치 \"{0}\"에 코드가 커밋됨");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "코드가 \"{0}\" 브랜치에 \"{1}\" 메시지로 커밋되었습니다");
m.put("code is committed with message \"{0}\"", "코드가 \"{0}\" 메시지로 커밋되었습니다");
m.put("commit message contains", "커밋 메시지 포함");
m.put("commits", "커밋들");
m.put("committed by", "작성자");

View File

@ -81,11 +81,16 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>Buscar Texto</span> <span class='font-size-sm text-muted'>no branch padrão</span></div>");
m.put("<i>No Name</i>", "<i>Sem Nome</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> para fechar");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> para mover");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> para navegar. <span class=\"keycap\">Esc</span> para fechar");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"<span class='keycap'>Tab</span> ou <span class='keycap'>Enter</span> para completar.");
m.put("<span class='keycap'>Tab</span> to complete.", "<span class='keycap'>Tab</span> para completar.");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> para ir</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> para pesquisar</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> atividades");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> Defina segredos de trabalho para serem usados na especificação de build. Segredos com <b>mesmo nome</b> podem ser definidos. Para um nome específico, o primeiro segredo autorizado com esse nome será usado (busca primeiro no projeto atual, depois nos projetos pai). Note que valores de segredos contendo quebras de linha ou menos de <b>%d</b> caracteres não serão mascarados no log de build");
@ -264,6 +269,7 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "Já existe uma solicitação de pull aberta para esta alteração");
m.put("Any agent", "Qualquer agente");
m.put("Any branch", "Qualquer branch");
m.put("Any commit message", "Qualquer mensagem de commit");
m.put("Any domain", "Qualquer domínio");
m.put("Any file", "Qualquer arquivo");
m.put("Any issue", "Qualquer problema");
@ -281,6 +287,7 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Applicable Branches", "Branches aplicáveis");
m.put("Applicable Builds", "Builds aplicáveis");
m.put("Applicable Code Comments", "Comentários de código aplicáveis");
m.put("Applicable Commit Messages", "Mensagens de Commit Aplicáveis");
m.put("Applicable Commits", "Commits aplicáveis");
m.put("Applicable Images", "Imagens aplicáveis");
m.put("Applicable Issues", "Problemas aplicáveis");
@ -303,6 +310,8 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Arguments", "Argumentos");
m.put("Artifacts", "Artefatos");
m.put("Artifacts to Retrieve", "Artefatos para recuperar");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"Desde que uma funcionalidade possa ser acessada via url, você pode inserir parte da url para corresponder e pular");
m.put("Ascending", "Ascendente");
m.put("Assignees", "Atribuídos");
m.put("Assignees Issue Field", "Campo de problema dos atribuídos");
@ -692,6 +701,7 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Collapse all", "Colapsar tudo");
m.put("Color", "Cor");
m.put("Columns", "Colunas");
m.put("Command Palette", "Paleta de Comandos");
m.put("Commands", "Comandos");
m.put("Comment", "Comentário");
m.put("Comment Content", "Conteúdo do Comentário");
@ -2135,6 +2145,7 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("No services defined", "Sem serviços definidos");
m.put("No start/due date", "Sem data de início/vencimento");
m.put("No step templates defined", "Sem modelos de etapa definidos");
m.put("No suggestions", "Sem sugestões");
m.put("No tags found", "Sem tags encontradas");
m.put("No timesheets defined", "Sem folhas de ponto definidas");
m.put("No user found with login name or email: ", "Nenhum usuário encontrado com nome de login ou email:");
@ -2437,6 +2448,8 @@ public class Translation_pt extends TranslationResourceBundle {
"Opcionalmente especifique branches separados por espaço aplicáveis para este gatilho. Use '**', '*' ou '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>correspondência de curinga de caminho</a>. Prefixe com '-' para excluir. Deixe vazio para o branch padrão");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"Opcionalmente especifique branches separados por espaço para verificar. Use '**' ou '*' ou '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>correspondência de curinga de caminho</a>. Prefixe com '-' para excluir. Deixe vazio para corresponder a todos os branches");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"Opcionalmente, especifique mensagens de commit separadas por espaço aplicáveis para esta transição. Use '*' ou '?' para correspondência curinga. Prefixe com '-' para excluir. Deixe vazio para corresponder a todos");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"Opcionalmente especifique arquivos separados por espaço para verificar. Use '**', '*' ou '?' para <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>correspondência de curinga de caminho</a>. Prefixe com '-' para excluir. Deixe vazio para corresponder a todos os arquivos");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2669,6 +2682,8 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Post Url", "URL de Postagem");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "Padrão de Prefixo");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"Prefixe o título com <code>WIP</code> ou <code>[WIP]</code> para marcar o pull request como trabalho em andamento");
m.put("Prepend", "Adicionar ao Início");
m.put("Preserve Days", "Preservar Dias");
m.put("Preset Commit Message", "Mensagem de Commit Pré-definida");
@ -2807,6 +2822,8 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "Pull request está com erro: {0}");
m.put("Pull request is merged", "Pull request foi mesclado");
m.put("Pull request is opened", "Pull request foi aberto");
m.put("Pull request is still a work in progress", "O pull request ainda está em andamento");
m.put("Pull request is work in progress", "O pull request está em andamento");
m.put("Pull request list", "Lista de pull requests");
m.put("Pull request merge", "Mesclar pull request");
m.put("Pull request not exist or access denied", "Pull request não existe ou acesso negado");
@ -3891,8 +3908,7 @@ public class Translation_pt extends TranslationResourceBundle {
"Esta etapa só pode ser executada por um executor compatível com Docker. Ela é executada sob <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>espaço de trabalho do trabalho</a>");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"Esta etapa publica os arquivos especificados para serem servidos como site web do projeto. O site web do projeto pode ser acessado publicamente via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"Esta etapa puxa refs especificados do remoto. Por razões de segurança, só é permitido executar a partir do branch padrão");
m.put("This step pulls specified refs from remote", "Esta etapa puxa refs especificadas do remoto");
m.put("This step pushes current commit to same ref on remote", "Esta etapa empurra o commit atual para o mesmo ref no remoto");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"Esta etapa configura o cache do Renovate. Coloque-a antes da etapa do Renovate se quiser usá-lo");
@ -4371,8 +4387,10 @@ public class Translation_pt extends TranslationResourceBundle {
m.put("cluster:lead", "líder");
m.put("cmd-k to show command palette", "cmd-k para mostrar o painel de comandos");
m.put("code commit", "commit de código");
m.put("code is committed to any branch", "código é commitado em qualquer branch");
m.put("code is committed", "o código está comprometido");
m.put("code is committed to branches \"{0}\"", "código é commitado nos branches \"{0}\"");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "o código está comprometido nos branches \"{0}\" com a mensagem \"{1}\"");
m.put("code is committed with message \"{0}\"", "o código está comprometido com a mensagem \"{0}\"");
m.put("commit message contains", "mensagem de commit contém");
m.put("commits", "commits");
m.put("committed by", "commitado por");

View File

@ -93,11 +93,16 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("<div><span>Search Text</span> <span class='font-size-sm text-muted'>in default branch</span></div>",
"<div><span>搜索文本</span> <span class='font-size-sm text-muted'>在默认分支中</span></div>");
m.put("<i>No Name</i>", "<i>无名称</i>");
m.put("<span class=\"keycap ml-3 mr-1\">esc</span> to close", "<span class=\"keycap ml-3 mr-1\">esc</span> 关闭");
m.put("<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> to move",
"<span class=\"keycap mr-1\">&uarr;</span> <span class=\"keycap mr-1\">&darr;</span> 移动");
m.put("<span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> to navigate. <span class=\"keycap\">Esc</span> to close",
"按 <span class=\"keycap mr-1\">&uarr;</span><span class=\"keycap\">&darr;</span> 导航。按 <span class=\"keycap\">Esc</span> 关闭");
m.put("<span class='keycap'>Tab</span> or <span class='keycap'>Enter</span> to complete.",
"按 <span class='keycap'>Tab</span> 或 <span class='keycap'>Enter</span> 完成。");
m.put("<span class='keycap'>Tab</span> to complete.", "按 <span class='keycap'>Tab</span> 完成。");
m.put("<span class='text-nowrap'><span class='keycap'>Enter</span> to go</span>", "<span class='text-nowrap'><span class='keycap'>Enter</span> 进入</span>");
m.put("<span class='text-nowrap'><span class='keycap'>Tab</span> to search</span>", "<span class='text-nowrap'><span class='keycap'>Tab</span> 搜索</span>");
m.put("<span wicket:id=\"activityCount\"></span> activities", "<span wicket:id=\"activityCount\"></span> 个活动");
m.put("<svg class='icon mr-2'><use xlink:href='%s'/></svg> Define job secrets to be used in build spec. Secrets with <b>same name</b> can be defined. For a particular name, the first authorized secret with that name will be used (search in current project first, then search in parent projects). Note that secret value containing line breaks or less than <b>%d</b> characters will not be masked in build log",
"<svg class='icon mr-2'><use xlink:href='%s'/></svg> 定义要在构建规范中使用的任务密钥。可以定义具有<b>相同名称</b>的密钥。对于特定名称,将使用具有该名称的第一个授权密钥(首先在当前项目中搜索,然后在父项目中搜索)。注意,包含换行符或少于<b>%d</b>个字符的密钥值在构建日志中不会被屏蔽");
@ -276,6 +281,7 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Another pull request already open for this change", "另一个合并请求已为此更改打开");
m.put("Any agent", "任何代理");
m.put("Any branch", "任何分支");
m.put("Any commit message", "任何提交信息");
m.put("Any domain", "任何域");
m.put("Any file", "任何文件");
m.put("Any issue", "任何工单");
@ -293,6 +299,7 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Applicable Branches", "适用分支");
m.put("Applicable Builds", "适用构建");
m.put("Applicable Code Comments", "适用代码评论");
m.put("Applicable Commit Messages", "适用的提交信息");
m.put("Applicable Commits", "适用提交");
m.put("Applicable Images", "适用镜像");
m.put("Applicable Issues", "适用工单");
@ -315,6 +322,8 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Arguments", "参数");
m.put("Artifacts", "制品");
m.put("Artifacts to Retrieve", "要获取的制品");
m.put("As long as a feature can be accessed via url, you can input part of the url to match and jump",
"只要功能可以通过 url 访问,您可以输入部分 url 进行匹配和跳转");
m.put("Ascending", "升序");
m.put("Assignees", "分配给");
m.put("Assignees Issue Field", "受让人工单字段");
@ -704,6 +713,7 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Collapse all", "全部折叠");
m.put("Color", "颜色");
m.put("Columns", "");
m.put("Command Palette", "命令面板");
m.put("Commands", "命令");
m.put("Comment", "评论");
m.put("Comment Content", "评论内容");
@ -2147,6 +2157,7 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("No services defined", "未定义服务");
m.put("No start/due date", "无开始/截止日期");
m.put("No step templates defined", "未定义步骤模板");
m.put("No suggestions", "没有建议");
m.put("No tags found", "未找到标签");
m.put("No timesheets defined", "未定义时间表");
m.put("No user found with login name or email: ", "未找到登录名或邮箱为的用户:");
@ -2449,6 +2460,8 @@ public class Translation_zh extends TranslationResourceBundle {
"可选择指定适用于此触发器的以空格分隔的分支。使用 '**'、'*' 或 '?' 进行 <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>路径通配符匹配</a>。前缀 '-' 表示排除。留空则为默认分支");
m.put("Optionally specify space-separated branches to check. Use '**' or '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all branches",
"可选择指定以空格分隔的要检查的分支。使用 '**'、'*' 或 '?' 进行 <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>路径通配符匹配</a>。前缀 '-' 表示排除。留空则匹配所有分支");
m.put("Optionally specify space-separated commit messages applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
"可选地指定适用于此转换的以空格分隔的提交信息。使用 '*' 或 '?' 进行通配符匹配。以 '-' 为前缀排除。留空以匹配所有");
m.put("Optionally specify space-separated files to check. Use '**', '*' or '?' for <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>path wildcard match</a>. Prefix with '-' to exclude. Leave empty to match all files",
"可选择指定以空格分隔的要检查的文件。使用 '**'、'*' 或 '?' 进行 <a href='https://docs.onedev.io/appendix/path-wildcard' target='_blank'>路径通配符匹配</a>。前缀 '-' 表示排除。留空则匹配所有文件");
m.put("Optionally specify space-separated jobs applicable for this transition. Use '*' or '?' for wildcard match. Prefix with '-' to exclude. Leave empty to match all",
@ -2681,6 +2694,8 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Post Url", "发布 URL");
m.put("PowerShell", "PowerShell");
m.put("Prefix Pattern", "前缀模式");
m.put("Prefix the title with <code>WIP</code> or <code>[WIP]</code> to mark the pull request as work in progress",
"在标题前加上 <code>WIP</code> 或 <code>[WIP]</code> 以标记拉取请求为进行中的工作");
m.put("Prepend", "前缀");
m.put("Preserve Days", "保留天数");
m.put("Preset Commit Message", "预设提交信息");
@ -2819,6 +2834,8 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Pull request is in error: {0}", "合并请求处于错误状态: {0}");
m.put("Pull request is merged", "合并请求被合并");
m.put("Pull request is opened", "合并请求被打开");
m.put("Pull request is still a work in progress", "拉取请求仍在进行中");
m.put("Pull request is work in progress", "拉取请求正在进行中");
m.put("Pull request list", "合并请求列表");
m.put("Pull request merge", "合并请求合并");
m.put("Pull request not exist or access denied", "合并请求不存在或访问被拒绝");
@ -3903,8 +3920,7 @@ public class Translation_zh extends TranslationResourceBundle {
"此步骤只能由支持 Docker 的执行器执行。它在 <a href='https://docs.onedev.io/concepts#job-workspace' target='_blank'>任务工作区</a> 下运行");
m.put("This step publishes specified files to be served as project web site. Project web site can be accessed publicly via <code>http://&lt;onedev base url&gt;/path/to/project/~site</code>",
"此步骤发布指定文件作为项目网站。项目网站可以通过 <code>http://&lt;onedev 基础 url&gt;/path/to/project/~site</code> 公开访问");
m.put("This step pulls specified refs from remote. For security reason, it is only allowed to run from default branch",
"此步骤从远程拉取指定引用。出于安全原因,仅允许从默认分支运行");
m.put("This step pulls specified refs from remote", "此步骤从远程拉取指定的引用");
m.put("This step pushes current commit to same ref on remote", "此步骤将当前提交推送至远程的同一引用");
m.put("This step sets up Renovate cache. Place it before Renovate step if you want to use it",
"此步骤设置 Renovate 缓存。如果需要使用,请将其放置在 Renovate 步骤之前");
@ -3992,12 +4008,16 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Try EE", "试用企业版");
m.put("Try Enterprise Edition", "试用企业版");
m.put("Twitch", "Twitch");
m.put("Two Factor Authentication", "两阶段验证");
m.put("Two-factor Authentication", "两阶段验证");
m.put("Two-factor authentication already set up. <a wicket:id=\"requestToSetupAgain\"><wicket:t>Request to set up again",
"两阶段验证已设置。<a wicket:id=\"requestToSetupAgain\"><wicket:t>请求重新设置");
m.put("Two-factor authentication is enabled. Please input passcode displayed on your TOTP authenticator. If you encounter problems, make sure time of OneDev server and your device running TOTP authenticator is in sync",
"两阶段验证已启用。请输入显示在您的 TOTP 身份验证器上的代码。如果您遇到问题,请确保 OneDev 服务器和您的设备运行 TOTP 身份验证器的时间同步");
m.put("Two-factor authentication is enforced for your account to enhance security. Please follow below procedure to set it up",
"为增强安全性,您的账户已强制启用两阶段验证。请按照以下步骤进行设置");
m.put("Two-factor authentication is now configured", "两阶段验证现已配置完成");
m.put("Two-factor authentication not enabled", "两阶段验证未启用");
m.put("Type", "类型");
m.put("Type <code>yes</code> below to cancel all queried builds", "在下面输入 <code>yes</code> 以取消所有查询的构建");
m.put("Type <code>yes</code> below to cancel selected builds", "在下面输入 <code>yes</code> 以取消选定的构建");
@ -4307,6 +4327,7 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("Widget", "小组件");
m.put("Widget Tab", "小组件 Tab");
m.put("Widget Timesheet Setting", "小组件时间表设置");
m.put("Will be prompted to set up two-factor authentication upon next login", "下次登录时将提示设置两阶段验证");
m.put("Will be transcoded to UTF-8", "将被转码为 UTF-8");
m.put("Window", "窗口");
m.put("Window Memory", "窗口内存");
@ -4378,8 +4399,10 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("cluster:lead", "主节点");
m.put("cmd-k to show command palette", "cmd-k 显示命令面板");
m.put("code commit", "代码提交");
m.put("code is committed to any branch", "代码提交到任何分支");
m.put("code is committed", "代码提交");
m.put("code is committed to branches \"{0}\"", "代码提交到分支 \"{0}\"");
m.put("code is committed to branches \"{0}\" with message \"{1}\"", "代码已提交到分支 \"{0}\",提交信息为 \"{1}\"");
m.put("code is committed with message \"{0}\"", "代码已提交,提交信息为 \"{0}\"");
m.put("commit message contains", "提交信息包含");
m.put("commits", "提交");
m.put("committed by", "提交者是");
@ -4579,11 +4602,6 @@ public class Translation_zh extends TranslationResourceBundle {
m.put("{javax.validation.constraints.NotEmpty.message}", "不能为空");
m.put("{javax.validation.constraints.NotNull.message}", "不能为空");
m.put("{javax.validation.constraints.Size.message}", "至少需要指定一个值");
m.put("Two Factor Authentication", "两阶段验证");
m.put("Two-factor authentication already set up. <a wicket:id=\"requestToSetupAgain\"><wicket:t>Request to set up again",
"两阶段验证已设置。<a wicket:id=\"requestToSetupAgain\"><wicket:t>请求重新设置");
m.put("Two-factor authentication not enabled", "两阶段验证未启用");
m.put("Will be prompted to set up two-factor authentication upon next login", "下次登录时将提示设置两阶段验证");
}
@Override