{% load humanize i18n icons permissions translations %} {% perm 'vcs.commit' object as user_can_commit_translation %} {% perm 'vcs.update' object as user_can_update_translation %} {% perm 'vcs.push' object as user_can_push_translation %} {% perm 'vcs.reset' object as user_can_reset_translation %} {% perm 'component.lock' object as user_can_lock_component %} {% if repository_operation_restrictions %}
{% translate "Each operation below excludes repositories unless you have the required permission on every component sharing them." %}
{% for operation, restrictions in repository_operation_restrictions %}
{% if restriction.project_components or restriction.permission_blockers %}
{% if restriction.project_components %}
{% translate "Skipped components:" %}
{% for component in restriction.project_components %}
{{ component.full_slug }}{% if not forloop.last %}, {% endif %}
{% endfor %}
{% endif %}
{% if restriction.permission_blockers %}
{% if restriction.project_components %}
{% endif %}
{% translate "Permission required on:" %}
{% for component in restriction.permission_blockers %}
{{ component.full_slug }}{% if not forloop.last %}, {% endif %}
{% endfor %}
{% endif %}
{% else %}
{% translate "A repository was skipped because one or more of its components are not accessible." %}
{% endif %}
{% translate "This will commit any pending changes present in Weblate and not in the repository." %}
{{ push_label }}
{% translate "This will update the Weblate repository with the upstream changes." %}
{% translate "Locking prevents translators from doing changes." %}
{% translate "Resets Weblate’s repository to match upstream and discards any pending changes in Weblate." %} {% translate "Use when you want the upstream to be the authority for translations." %} {% translate "It will discard changes in Weblate repo and bring it in sync with the upstream repository." %}
{% translate "Resets Weblate’s repository to match upstream and reapplies pending translations onto the reset repository state." %} {% translate "Use when you want Weblate to be the authority for translations." %} {% translate "Missing language files must already exist upstream or Weblate must be able to create them for the component." %}
{% translate "Cleanup removes all files which are not tracked by the version control from the repository." %} {% translate "It also removes stale branches which are not used by Weblate." %} {% translate "Use when there is some garbage left in the Weblate repository." %}
{% translate "Forces writing all strings to the translation files." %} {% translate "Use this when repository files became out of sync with Weblate for some reason." %}
{% translate "Loads translations from the files into Weblate." %} {% translate "Use when Weblate missed some of the strings after updating the repository." %} {% translate "This might discard edits that cannot be committed because of the configured commit policy." %}
{% translate "Removes repeated strings with the same identifier from the translation file." %} {% translate "Use when the translation file contains duplicate strings that are not present in Weblate." %}
{% translate "Removes strings that are no longer present in the base file." %} {% translate "The cleanup translation files add-on can perform this automatically." %}
{% translate "Removes obsolete strings from PO files." %} {% translate "Use when obsolete entries should be pruned without enabling automatic removal on save." %}
| {% translate "Repository details" %} |
{{ component.repository_status }}
|
|---|