You are browsing a read-only backup copy of Wikitech. The primary site can be found at wikitech.wikimedia.org

Template:Gitweb/doc: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
imported>CDanis
No edit summary
imported>CDanis
No edit summary
Line 1: Line 1:
<!-- PUT HERE THE DOCUMENTATION -->
<!-- PUT HERE THE DOCUMENTATION -->
{{see also|Template:Gerrit|Template:Git repo}}
This generates a link to a file on [[Gerrit]].
This generates a link to a file on [[Gerrit]].


Line 33: Line 35:
: optional. You can give a gitweb action, such as "summary", "tree", "blob", "blob_plain" (defaults to "blob").
: optional. You can give a gitweb action, such as "summary", "tree", "blob", "blob_plain" (defaults to "blob").
; branch
; branch
: optional. The branch in the git repo, default 'master'.
: optional. The branch in the git repo, default 'master' (unless project=operations/puppet, in which case, default 'production')


== Issues ==
== Issues ==

Revision as of 03:21, 25 February 2020

This generates a link to a file on Gerrit.

The goal is to avoid ugly URLs like

 https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/extensions/examples.git;f=BoilerPlate/README;hb=HEAD

and also future-proof (ha ha) these links against changes and evolution to source code control.

Usage

{{Gitweb |project=mediawiki/extensions/examples |file=Example/Example.php }}

produces

Example/Example.php
{{Gitweb |project=mediawiki/extensions/ArticleFeedback 
|file=modules/jquery.articleFeedback/images/star-new-down.png
|text=star image | action=blob_plain }}

produces

star image
{{Gitweb |project=operations/apache-config|action=summary}}

produces

operations/apache-config

Parameters

project
mandatory. Must be entire path to project — always (?) mediawiki/ , usually extensions, then your project — but not the .git
file
optional. The path within the project.
text
optional. The text that's linked. If not specified, defaults to file and then to project.
action
optional. You can give a gitweb action, such as "summary", "tree", "blob", "blob_plain" (defaults to "blob").
branch
optional. The branch in the git repo, default 'master' (unless project=operations/puppet, in which case, default 'production')

Issues

  • why does the semicolon in the {{#if: TEST|;need that semicolon|}} test introduce whitespace? (Workaround is to use HTML entity &#59; )
  • action= is gitweb-specific, maybe abstract to format=raw/mimetype/...
<templatedata>

{ "params": { "project": { "label": "Project", "description": "Project (repo) name", "example": "mediawiki/core", "type": "string", "required": true }, "file": { "label": "File", "description": "File name within repo", "example": "doc/README.md", "type": "string" }, "text": { "label": "Link text", "type": "string" }, "branch": { "label": "Git branch (default 'master')", "type": "string" } }, "description": "Adds link to repo/file", "format": "inline" }

</templatedata>