Template:Repo link: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(GitLab zip archive download support implementation and documention. This is now specified through the 'type' parameter being set to 'zip'.)
(Support for GitHub wikis.)
 
(48 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{#if: {{{cmd|}}}<!--                                               The optional prepended CLI command and options. -->
<noinclude>{{caution|This template, via its [[Template:repo link/doc related|subtemplates]], is used by many pages.  Therefore modifications will propagate throughout the FlightGear wiki and have a large effect.  Changes should be carefully tested on a [[Template:repo link/sandbox|/sandbox]] subpage or as a user subpage before being implemented here.}}</noinclude><!--
  | {{strip whitespace|{{{cmd}}}}} <nowiki></nowiki><!--           The command.
-->{{#if: {{{cmd|}}}<!--                                           The optional prepended CLI command and options. -->
-->{{#if: {{{opt|}}} | {{{opt}}} <nowiki></nowiki>}}<!--           The options. -->
    | {{strip whitespace|{{{cmd}}}}} <nowiki></nowiki><!--         The command.
}}<!--
  -->{{#if: {{{opt|}}} | {{{opt}}} <nowiki></nowiki>}}<!--         The options. -->
-->{{#if: {{{full|}}} | |[}}<!--                                   To link or not to link?  (default = yes)
  }}<!--
-->{{#ifeq: {{{full|}}} | 1 | |[}}<!--                             To link or not to link?  (default = yes).
-->{{#switch: {{{site|{{project infrastructure|abbrev}}}}}
-->{{#switch: {{{site|{{project infrastructure|abbrev}}}}}
| s
| s
Line 31: Line 32:
           | rss =
           | rss =
           | #default =
           | #default =
           ci/<!--
           ci/<!--                                                 The commit, tag, or branch (defaulting to next).
         -->{{{commit|{{{branch|next}}}}}}/ <!--                    The commit hash or next. -->
         -->{{{commit|{{#if: {{{tag|}}}
                      | {{{tag}}}
                      | {{{branch|next}}}
                    }}}}}/
         }}<!--
         }}<!--
       -->{{#switch: {{{view|tree}}} <!--                           Tree, log, or commit view. -->
       -->{{#switch: {{{view|}}} <!--                               The different views. -->
           | tree = tree/
           | tree = tree/
           | log = log/?path{{=}}
           | log = log/?path{{=}}
           | rss = feed/
           | rss = feed/
           | commit =  
           | commit =  
          | #default =<!--                                        Set the view based on the user supplied parameters.
        -->{{#if: {{{path|}}}
            | tree/
            | {{#if: {{{commit|}}}
                |
                | tree/
              }}
          }}
         }}<!--
         }}<!--
       -->{{#switch: {{{view|tree}}} <!--                            Only show the path and line number if view!=rss. -->
       -->{{#switch: {{{view|}}}
           | rss =  
           | rss =  
           | #default = {{{path|}}}<!--                             The file path.
          | commit =
        -->{{#if: {{{line|}}} | &#35;l{{{line}}} }}<!--            The optional line number. -->
           | #default =<!--
        -->{{#if: {{{path|}}} <!--                                    Only show the path and line number if the path is supplied. -->
            | {{{path|}}}<!--                                       The file path.
          -->{{#if: {{{line|}}} | &#35;l{{{line}}} }}<!--            The optional line number. -->
          }}
        }}<!--
      -->{{#ifeq: {{{view|}}} | raw
          | ?format=raw
         }}
         }}
       }} <!--
       }} <!--
     -->{{#if: {{{text|}}}
     -->{{#if: {{{text|}}}
         | {{{text}}} <!--                                         A text description for the link. -->
         | {{{text}}}<!--                                           A text description for the link. -->
         | {{#if: {{{full|}}} <!--                                 Construct text for the link -->
         | {{#ifeq: {{{full|}}} | 1 <!--                           Construct text for the link. -->
             | <!--                                                No text. -->
             | <!--                                                No text. -->
             | {{#if: {{{pre|}}}
             | {{#if: {{{pre|}}}
Line 56: Line 75:
                     | {{{user|{{{proj|flightgear}}}}}}/<!--        The user or project name.
                     | {{{user|{{{proj|flightgear}}}}}}/<!--        The user or project name.
                     -->{{{repo|flightgear}}}<!--                    The repository name.
                     -->{{{repo|flightgear}}}<!--                    The repository name.
                     -->{{#ifeq: {{{view|}}} | rss | <!--            The repository commit or branch (if view != rss). -->
                     -->{{#ifeq: {{{view|}}} | rss | <!--            The repository commit, tag, or branch (if view != rss). -->
                         | /{{{commit|{{{branch|next}}}}}}
                         | /{{{commit|{{{tag|{{{branch|next}}}}}}}}}
                       }}
                       }}
                   }}
                   }}
Line 69: Line 88:
               -->{{#if: {{{line|}}} | &#35;l{{{line}}}}}<!--        The optional line number. -->
               -->{{#if: {{{line|}}} | &#35;l{{{line}}}}}<!--        The optional line number. -->
               }}<!--
               }}<!--
             -->{{#switch: {{{view|tree}}} <!--                     The view description. -->
            -->{{#if: {{{pre|}}} <!--                              Add the commit or branch info for the prefixed text. -->
                | {{#if: {{{commit|}}}
                    |<nowiki></nowiki> (commit {{{commit}}})
                    | {{#if: {{{tag|}}}
                        |<nowiki></nowiki> (tag {{{tag}}})
                        | {{#if: {{{branch|}}}
                            |<nowiki></nowiki> (branch {{{branch}}})
                          }}
                      }}
                  }}
              }}<!--
             -->{{#switch: {{{view|}}} <!--                         The view description. -->
                 | tree =  
                 | tree =  
                 | log = <nowiki></nowiki> log view
                 | log = <nowiki></nowiki> log view
                 | commit = <nowiki></nowiki> commit view
                 | commit = <nowiki></nowiki> commit view
                 | rss = <nowiki></nowiki> RSS feed
                 | rss = <nowiki></nowiki> RSS feed
                | #default =<!--                                  Set the view based on the user supplied parameters.
              -->{{#if: {{{path|}}}
                  |
                  | {{#if: {{{commit|}}}
                      |<nowiki></nowiki> commit view
                    }}
                }}
               }}
               }}
           }}
           }}
Line 85: Line 122:
           | #default =
           | #default =
           {{{commit|HEAD}}}/<!--                                  The revision number or HEAD.
           {{{commit|HEAD}}}/<!--                                  The revision number or HEAD.
         -->{{#switch: {{{view|tree}}} <!--                         Tree, log, or commit view. -->
         -->{{#switch: {{{view|}}} <!--                             The different views. -->
             | tree = tree/
             | tree = tree/
             | log = log/?path{{=}}
             | log = log/?path{{=}}
            | rss =
             | commit =  
             | commit =  
            | #default =<!--                                      Set the view based on the user supplied parameters.
          -->{{#if: {{{tag|{{{branch|{{{path|}}}}}}}}}
              | tree/
              | {{#if: {{{commit|}}}
                  |
                  | tree/
                }}
            }}
           }}
           }}
         }}
         }}
       }}<!--
       }}<!--
     -->{{#switch: {{{view|tree}}} <!--                              Only show the branch, path, and line number if view != commit. -->
     -->{{#switch: {{{view|}}}
         | commit =  
         | commit =  
         | rss = feed/
         | rss = feed/
         | #default = {{{branch|trunk}}}<!--                       The base path or branch (default = trunk).
         | #default =<!--
      -->{{#if: {{{path|}}} | /{{{path}}} }}<!--                    The file path.
       -->{{#switch: {{{type|}}}
       -->{{#switch: {{{type|}}}
           | svn =  
           | svn = <!--
            {{#if: {{{commit|}}} | @r{{{commit}}} }}<!--           The optional revision number. -->
        -->{{{tag|{{{branch|trunk}}}}}}<!--                        The tag or branch (default = trunk).
           | svn web =
        -->{{#if: {{{path|}}} | /{{{path}}} }}<!--                  The file path.
             {{#if: {{{line|}}} | &#35;l{{{line}}} }} <!--         The optional line number. -->
        -->{{#if: {{{commit|}}} | @r{{{commit}}} }}<!--             The optional revision number. -->
           | svn web = <!--
        -->{{#if: {{{tag|{{{branch|{{{path|}}}}}}}}} <!--          Only show the tag, branch, path, and line number if a tag, branch or path is supplied. -->
             | {{{tag|{{{branch|trunk}}}}}}<!--                    The base path or branch (default = trunk).
          -->{{#if: {{{path|}}}
              | /{{{path}}}<!--                                    The file path.
            -->{{#if: {{{line|}}} | &#35;l{{{line}}} }}<!--         The optional line number, but only if the path is supplied. -->
            }}
            | {{#if: {{{commit|}}} | | trunk}}<!--                Minimally show the trunk if no commit is given. -->
          }}
         }}
         }}
       }} <!--
       }} <!--
     -->{{#if: {{{text|}}}
     -->{{#if: {{{text|}}}
         | {{{text}}} <!--                                         A text description for the link. -->
         | {{{text}}}<!--                                           A text description for the link. -->
         | {{#if: {{{full|}}} <!--                                 Construct text for the link -->
         | {{#ifeq: {{{full|}}} | 1 <!--                           Construct text for the link. -->
             | <!--                                                No text. -->
             | <!--                                                No text. -->
             | {{#if: {{{pre|}}}
             | {{#if: {{{pre|}}}
Line 114: Line 168:
                     | {{{user|{{{proj|flightgear}}}}}}/<!--        The user or project name.
                     | {{{user|{{{proj|flightgear}}}}}}/<!--        The user or project name.
                     -->{{{repo|flightgear}}}<!--                    The repository name.
                     -->{{{repo|flightgear}}}<!--                    The repository name.
                     -->{{#ifeq: {{{view|}}} | rss | <!--           The repository branch (if view != rss). -->
                     -->{{#switch: {{{view|}}}<!--                   The repository branch. -->
                         | /{{{branch|trunk}}}
                         | rss =
                        | commit =
                        | #default = <!--
                      -->{{#if: {{{tag|{{{branch|{{{path|}}}}}}}}}
                          | /{{{tag|{{{branch|trunk}}}}}}
                        }}
                       }}
                       }}
                   }}
                   }}
               }}<!--
               }}<!--
             -->{{#switch: {{{view|tree}}}
             -->{{#switch: {{{view|}}}
                 | rss =  
                 | rss =  
                 | #default =
                 | #default =
Line 128: Line 187:
               -->{{#if: {{{commit|}}} | @r{{{commit}}}}} <!--      The commit. -->
               -->{{#if: {{{commit|}}} | @r{{{commit}}}}} <!--      The commit. -->
               }}<!--
               }}<!--
             -->{{#switch: {{{view|tree}}} <!--                     The view description. -->
             -->{{#switch: {{{view|}}} <!--                         The view description. -->
                 | tree =  
                 | tree =  
                 | log = <nowiki></nowiki> log view
                 | log = <nowiki></nowiki> log view
                 | commit = <nowiki></nowiki> commit view
                 | commit = <nowiki></nowiki> commit view
                 | rss = <nowiki></nowiki> RSS feed
                 | rss = <nowiki></nowiki> RSS feed
                | #default =<!--                                  Set the view based on the user supplied parameters.
              -->{{#if: {{{tag|{{{branch|{{{path|}}}}}}}}}
                  |
                  | {{#if: {{{commit|}}}
                      |<nowiki></nowiki> commit view
                    }}
                }}
               }}
               }}
           }}
           }}
Line 141: Line 207:
| github = <!--
| github = <!--
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->{{#ifeq: {{{view|tree}}} | raw <!--                             The URL. -->
-->github.com<!--                                                  The URL.
     | raw.githubusercontent.com/
-->{{#if: {{{user|{{{proj|}}}}}} | {{#if: {{{repo|}}}<!--           Continue with the URL construction, only if the project or repository is given. -->
    | github.com/
     | {{#if: {{{user|}}} <!--                                     Project or user? -->
  }}<!--
        | /{{{user}}}
-->{{#if: {{{user|}}} <!--                                         Project or user? -->
        | {{#if: {{{proj|}}} | /{{{proj|}}}}}
    | {{{user}}}
      }}<!--
    | {{{proj|}}}
    -->{{#if: {{{repo|}}} | /{{{repo|}}}}}<!--                     The version control repository.
  }}/<!--
    -->{{#switch: {{{type|git web}}} <!--                           The URL type. -->
-->{{{repo|flightgear}}}<!--                                       The version control repository.
        | git = .git<!--                                           Append '.git' to the base repository URL. -->
-->{{#switch: {{{type|git web}}} <!--                               Web interface or base URL. -->
        | git web = <!--
    | git = <!--                                                   Nothing more to do -->
      -->{{#if: {{{view|{{{commit|{{{tag|{{{branch|{{{path|}}}}}}}}}}}}}}}
    | git web = /<!--
          | /<!--
    -->{{#ifeq: {{{view|tree}}} | raw <!--                         The repository view. -->
        -->{{{view|tree}}}/<!--                                     The repository view.
          |
        -->{{{commit|{{{tag|{{{branch|master}}}}}}}}}<!--           The branch or commit.
          | {{{view|tree}}}/
        -->{{#if: {{{path|}}} | /{{{path}}}}}<!--                   The file or directory path.
        }}<!--
        -->{{#if: {{{line|}}} | &#35;L{{{line}}} }} <!--           The optional line number(s). -->
    -->{{{commit|{{{branch|master}}}}}}<!--                       The branch or commit.
        }}
    -->{{#if: {{{path|}}} | /{{{path}}}}}<!--                     The file or directory path.
        | zip = /archive/<!--                                      The base zip file URL.
    -->{{#if: {{{line|}}} | &#35;L{{{line}}} }} <!--               The optional line number(s).
        -->{{{commit|{{{tag|{{{branch|master}}}}}}}}}.zip<!--      Download for a specific commit, tag, or branch (defaulting to master). -->
    -->{{#if: {{{text|}}}
        | tracker = /issues<!--                                    The issue tracker path.
          | {{{text}}} <!--                                         The text description for the link. -->
        -->{{#if: {{{number|}}} | /{{{number}}}}}<!--              The file or directory path. -->
          | {{#if: {{{full|}}}
        | wiki = /wiki<!--                                        The wiki path.
              | <!--                                               No text. -->
        -->{{#if: {{{path|}}} | /{{{path}}}}}<!--                  The subpage path. -->
              | {{#if: {{{pre|}}}
      }}
                  | {{{pre}}}<!--                                   A prefix to the link label. -->
  }}}} <!--
                  | {{#if: {{{simplepath|}}}
-->{{#if: {{{text|}}}
                      | <!--                                       No project, repository or branch. -->
    | {{{text}}}<!--                                               The text description for the link. -->
                      | github/<!--                                 Site advertising.
    | {{#ifeq: {{{full|}}} | 1
                    -->{{{user|{{{proj|}}}}}}/<!--                 The user or project name
        | <!--                                                     No text. -->
                    -->{{{repo|flightgear}}}/<!--                 The repository name.
        | {{#if: {{{user|{{{proj|}}}}}}
                    -->{{{commit|{{{branch|HEAD}}}}}}<!--         The repository branch.-->
            | {{#if: {{{repo|}}}
                    }}
                | {{#if: {{{pre|}}}
                 }}<!--
                    | {{{pre}}}<!--                               A prefix to the link label. -->
            -->{{#if: {{{path|}}} | /{{{path}}}}}<!--             The file or directory path.
                    | {{#if: {{{simplepath|}}}
            -->{{#if: {{{line|}}} | &#35;L{{{line}}}}} <!--       The optional line number(s). -->
                        | <!--                                     No project, repository or branch. -->
            }}
                        | github/<!--                             Site advertising.
         }}
                        -->{{{user|{{{proj|}}}}}}<!--               The user or project name.
                        -->/{{{repo|}}}<!--                         The repository name.
                        -->{{#if: {{{view|{{{commit|{{{tag|{{{branch|}}}}}}}}}}}}
                            | /{{{commit|{{{tag|{{{branch|master}}}}}}}}}<!-- The repository commit, tag or branch.-->
                          }}
                      }}
                  }}<!--
                 -->{{#switch: {{{type|git web}}} <!--               The URL type. -->
                    | git web =
                      {{#if: {{{path|}}} | /{{{path}}}}}<!--       The file or directory path.
                    -->{{#if: {{{line|}}} | &#35;L{{{line}}}}} <!-- The optional line number(s).
                    -->{{#switch: {{{view|tree}}} <!--              The view description. -->
                        | blob =
                        | blame = <nowiki></nowiki> blame view
                        | commit = <nowiki></nowiki> commit view
                        | commits = <nowiki></nowiki> history view
                        | raw = <nowiki></nowiki> raw view
                        | tree =
                      }}
                    | zip = <nowiki></nowiki> zip file<!--         The link description. -->
                  }}
              }}
            | GitHub website
          }}
      }}
   }}
   }}
| gl
| gl
Line 183: Line 273:
| gitlab = <!--
| gitlab = <!--
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->gitlab.com/<!--                                                 The URL.
-->gitlab.com<!--                                                   The URL.
-->{{{proj|flightgear}}}<!--                                       The project (default = flightgear).
-->{{#if: {{{user|{{{proj|}}}}}} | {{#if: {{{repo|}}}<!--           Continue with the URL construction, only if the project or repository is given. -->
-->{{#if: {{{repo|}}} | /{{{repo}}} }}<!--                         The version control repository.
    | {{#if: {{{user|}}} <!--                                      Project or user? -->
-->{{#switch: {{{type|git web}}} <!--                               Web interface or base URL. -->
        | /{{{user}}}
    | git = .git<!--                                               Append '.git' for the base repository URL. -->
        | /{{{proj|}}}
    | git web = <big style="color:red">The GitLab web interface is not implemented for {{tl|repo link}}</big>
      }}<!--
    | zip = /repository/archive.zip<!--                           The base zip file URL.
    -->{{#if: {{{repo|}}} | /{{{repo|}}}}}<!--                     The version control repository.
    -->{{#if: {{{commit|{{{tag|{{{branch|}}} }}} }}}
    -->{{#switch: {{{type|git web}}} <!--                           The URL type. -->
        | &#63;ref={{{commit|{{{tag|{{{branch|}}} }}} }}}<!--     Download for a specific commit, tag, or branch. -->
        | git = .git<!--                                           Append '.git' to the base repository URL. -->
       }} <!--
        | git web = <!--
    -->{{#if: {{{text|}}}
      -->{{#if: {{{view|{{{commit|{{{tag|{{{branch|{{{path|}}}}}}}}}}}}}}}
        | {{{text}}} <!--                                         The text description for the link. -->
          | /<!--
        | {{#if: {{{full|}}}
        -->{{{view|blob}}}/<!--                                    The repository view.
            | <!--                                                 No text. -->
        -->{{{commit|{{{tag|{{{branch|master}}}}}}}}}<!--          The branch or commit.
             | {{#if: {{{pre|}}}
        -->{{#if: {{{path|}}} | /{{{path}}}}}<!--                  The file or directory path.
                | {{{pre}}}<!--                                   A prefix to the link label. -->
        -->{{#if: {{{line|}}} | &#35;L{{{line}}} }} <!--            The optional line number(s). -->
                | {{#if: {{{simplepath|}}}
        }}
                    | <!--                                         No project, repository or branch. -->
        | zip = /repository/archive.zip<!--                       The base zip file URL.
                    | gitlab/<!--                                 Site advertising.
        -->{{#if: {{{commit|{{{tag|{{{branch|master}}}}}}}}}
                    -->{{{proj|}}}/<!--                             The project name
            | ?ref={{{commit|{{{tag|{{{branch|master}}}}}}}}}<!-- Download for a specific commit, tag, or branch (defaulting to master). -->
                    -->{{{repo|}}}/<!--                             The repository name.
          }}
                    -->{{{commit|{{{tag|{{{branch|}}} }}} }}}<!--   The commit, tag, or branch.-->
       }}
  }}}} <!--
-->{{#if: {{{text|}}}
    | {{{text}}}<!--                                               The text description for the link. -->
    | {{#ifeq: {{{full|}}} | 1
        | <!--                                                     No text. -->
        | {{#if: {{{user|{{{proj|}}}}}}
             | {{#if: {{{repo|}}}
                | {{#if: {{{pre|}}}
                    | {{{pre}}}<!--                               A prefix to the link label. -->
                    | {{#if: {{{simplepath|}}}
                        | <!--                                     No project, repository or branch. -->
                        | gitlab/<!--                             Site advertising.
                        -->{{{user|{{{proj|}}}}}}/<!--             The user or project name.
                        -->{{{repo|}}}/<!--                         The repository name.
                        -->{{{commit|{{{tag|{{{branch|master}}}}}}}}}<!-- The commit, tag, or branch.-->
                      }}
                  }}<!--
                -->{{#switch: {{{type|git web}}} <!--              The URL type. -->
                    | git web =
                      {{#if: {{{path|}}} | /{{{path}}}}}<!--      The file or directory path.
                    -->{{#if: {{{line|}}} | &#35;L{{{line}}}}} <!-- The optional line number(s).
                    -->{{#switch: {{{view|tree}}} <!--              TODO:  The view description. -->
                        | tree =
                      }}
                    | zip = <nowiki></nowiki> zip file<!--        The link description. -->
                   }}
                   }}
               }} <nowiki></nowiki> zip file<!--                    The link description. -->
               }}
            | GitLab website
           }}
           }}
       }}
       }}
   }}
   }}
| g
| g
| go
| gito
| gito
| gitorious = <!--
| gitorious = <!--
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->{{{protocol|https}}}://<!--                                      URL protocol (default = https).
-->gitorious.org/<!--                                               The URL.
-->gitorious.org<!--                                               The URL (stop here if no project or repository is given).
-->{{{proj|fg}}}/<!--                                               The project (default = fg).
-->{{#if: {{{proj|}}} | {{#if: {{{repo|}}}
-->{{{repo|flightgear}}}<!--                                       The version control repository.
    | {{#if: {{{proj|}}} | /{{{proj}}}}}<!--                       The project.
-->{{#switch: {{{type|git web}}} <!--                               Web interface or base URL. -->
  -->{{#if: {{{repo|}}} | /{{{repo}}}}}<!--                         The version control repository.
    | git = .git<!--                                               Append '.git' for the base repository URL. -->
  -->{{#switch: {{{type|git web}}} <!--                             Web interface or base URL. -->
    | git web = ?<!--
      | git = .git<!--                                             Append '.git' to the base repository URL. -->
      -->p={{{proj|fg}}}<!--                                       The project and repository names, with '.git' appended.
      | git web = ?<!--
        -->&#58;{{{repo|flightgear}}}<!--
    -->p={{{proj|fg}}}<!--                                         The project and repository names, with '.git' appended.
        -->.git<!--
    -->:{{{repo|flightgear}}}<!--
      -->&#59;a={{#if: {{{view|}}} <!--                             The repository view mode. -->
    -->.git<!--
              | {{#switch: {{{view|}}}
    -->;a={{#if: {{{view|}}} <!--                                   The repository view mode. -->
                  | raw = blob_plain
                | {{#switch: {{{view|}}}
                  | #default = {{{view|summary}}}
                    | raw = blob_plain
                }}
                    | #default = {{{view|summary}}}
              | {{#if: {{{path|}}} | blob
                  }}
                  | {{#if: {{{commit|}}} | commit | summary }}
                | {{#if: {{{path|}}} | blob
                }}
                    | {{#if: {{{commit|{{{mr|}}}}}}
            }}<!--
                        | commit
      -->{{#if: {{{path|}}} | &#59;f={{{path|}}}}}<!--             The file or directory path.
                        | {{#if: {{{branch|{{{tag|}}}}}}
      -->{{#if: {{{commit|{{{branch|}}}}}} <!--                     The commit or branch query string -->
                            | shortlog
          | {{#switch: {{{view|}}}
                            | summary
              | blob | raw | tree = &#59;hb=
                          }}
              | #default = &#59;h=
                      }}
            }}
                  }}
         }}<!--
              }}<!--
      -->{{#if: {{{commit|}}}
    -->{{#if: {{{path|}}} | {{;}}f={{{path|}}}}}<!--               The file or directory path.
          | {{{commit}}} <!--                                     The commit hash. -->
    -->{{#if: {{{commit|{{{tag|{{{branch|{{{mr|}}}}}}}}}}}} <!--   The commit, tag, branch, or merge request query string. -->
          | {{#if: {{{branch|}}} | refs/heads/{{{branch}}}}}<!--   The internal git reference. -->
        | {{#if: {{{view|}}}
        }}<!--
            | {{#switch: {{{view|}}}
      -->{{#if: {{{line|}}}  |&#35;l{{{line}}}}} <!--               The optional line number.
                | blob | raw | tree = {{;}}hb=
      -->{{#if: {{{text|}}}
                | #default = {{;}}h=
          | {{{text}}} <!--                                       The text description for the link. -->
              }}
          | {{#if: {{{full|}}}
            | {{#if: {{{path|}}}
              | <!--                                               No text. -->
                | {{;}}hb=
              | {{#if: {{{pre|}}}
                | {{;}}h=
                  | {{{pre}}}<!--                                 A prefix to the link label. -->
              }}
                  | {{#if: {{{simplepath|}}}
          }}
                      | <!--                                       No project, repository or branch. -->
      }}<!--
                      | {{{proj|fg}}}/<!--                        The project name
    -->{{#if: {{{mr|}}}
                      -->{{{repo|flightgear}}}/<!--                 The repository name.
         | refs/merge-requests/{{{mr}}} <!--                       The internal git reference for the merge request. -->
                      -->{{{commit|{{{branch|HEAD}}}}}}<!--         The repository branch.-->
        | {{#if: {{{commit|}}}
                    }}
            | {{{commit}}} <!--                                   The commit hash. -->
                }}<!--
            | {{#if: {{{tag|}}}<!--                                The internal git reference for the tag. -->
              -->{{#if: {{{path|}}} | /{{{path}}}}}<!--             The file or directory path.
                | refs/tags/{{{tag}}}
              -->{{#if: {{{line|}}} | &#35;l{{{line}}}}} <!--       The optional line number. -->
                | {{#if: {{{branch|}}}<!--                         The internal git reference for the branch. -->
             }}
                    | refs/heads/{{{branch}}}
        }}
                  }}
              }}
          }}
      }}<!--
    -->{{#if: {{{line|}}}  |&#35;l{{{line}}}}} <!--                 The optional line number. -->
    }}
  }}}} <!--
-->{{#if: {{{text|}}}
    | {{{text}}}<!--                                               The text description for the link. -->
    | {{#ifeq: {{{full|}}} | 1
        | <!--                                                     No text. -->
        | {{#if: {{{proj|}}}
            | {{#if: {{{repo|}}}
                | {{#if: {{{pre|}}}
                    | {{{pre}}}<!--                               A prefix to the link label. -->
                    | {{#if: {{{simplepath|}}}
                        | <!--                                     No project, repository or branch. -->
                        | gitorious/<!--                          Site advertising.
                        -->{{{proj|}}}/<!--                        The project name.
                        -->{{{repo|}}}/<!--                         The repository name.
                        -->{{#if: {{{mr|}}}
                            | merge-requests/{{{mr}}}<!--          The merge request.-->
                            | {{{commit|{{{tag|{{{branch|HEAD}}}}}}}}}<!-- Or the commit, tag or branch.-->
                          }}
                      }}
                  }}<!--
                -->{{#if: {{{path|}}} | /{{{path}}}}}<!--           The file or directory path.
                -->{{#if: {{{line|}}} | &#35;l{{{line}}}}} <!--     The optional line number. -->
              }}
             | Gitorious website
          }}
      }}
   }}
   }}
| #default = <!--
| #default = <!--
Line 274: Line 422:
     | git =
     | git =
     | git web = <big style="color:red">Generic git web interface is not implemented for {{tl|repo link}}</big>
     | git web = <big style="color:red">Generic git web interface is not implemented for {{tl|repo link}}</big>
     | svn = /{{{branch|trunk}}}
     | svn = /{{{branch|trunk}}}<!--
  -->{{#if: {{{path|}}} | /{{{path}}}}}
     | svn web = <big style="color:red">Generic svn web interface is not implemented for {{tl|repo link}}</big>
     | svn web = <big style="color:red">Generic svn web interface is not implemented for {{tl|repo link}}</big>
   }}
   }}
}}<!--
}}<!--
-->{{#if: {{{full|}}} | |]}}<!--                                   To link or not to link?  (default = yes)
-->{{#ifeq: {{{full|}}} | 1 | |]}}<!--                             To link or not to link?  (default = yes).
-->{{#if: {{{post|}}} | <nowiki></nowiki> {{{post}}} }}<!--         Appended text.
-->{{#if: {{{post|}}} | <nowiki></nowiki> {{{post}}}}}<!--         Appended text.
--><noinclude>
--><noinclude>


{{Informative template|1=
{{repo link/doc}}
== Goal ==
This is designed to be a master template for creating links or URLs for all types of version control repository.  It can be used directly for full flexibility, or via one of the specific subtemplates listed in [[#Related templates]].
 
{{inote|This template may add an external link.  You will therefore have to answer an anti-spam security question before your edit is saved.}}
 
== Usage ==
{{obr}}'''repo link
{{!}} site      =
{{!}} ''cmd''        =
{{!}} ''opt''        =
{{!}} ''protocol''  =
{{!}} ''login''      =
{{!}} ''type''      =
{{!}} ''user''      =
{{!}} ''proj''      =
{{!}} ''repo''      =
{{!}} ''branch''    =
{{!}} ''tag''        =
{{!}} ''path''      =
{{!}} ''commit''    =
{{!}} ''line''      =
{{!}} ''view''      =
{{!}} ''text''      =
{{!}} ''pre''        =
{{!}} ''post''      =
{{!}} ''simplepath'' =
{{!}} ''full''      =
{{cbr}}
 
All parameters except '''site''' are optional.
 
; site: Points the template to a repository host:
:* For [http://sourceforge.net/ SourceForge] use either '''s''', '''sf''' or '''sourceforge'''.
:* For [https://github.com/ GitHub] use either '''gh''', '''gith''' or '''github'''.
:* For [https://about.gitlab.com/ GitLab] use either '''gl''', '''gitl''' or '''gitlab'''.
:* For the [https://gitorious.org/ Gitorious] archive use either '''g''', '''gito''' or '''gitorious'''.
:* For generic repositories, the '''site''' parameter will be interpreted as the domain name.
 
; cmd: An optional command line tool name + options to prepend to the URL.  For example '''git clone'''.
 
; opt: Any additional options to show after '''cmd''', if supplied.
: {{inote|Developer note: This is for future non-CLI handling of a standardised set of '''cmd''' parameter values}}
 
; protocol: The URL protocol, for example '''https''', '''http''', '''git''', '''ssh''', '''svn'''.  This defaults to '''https'''.
 
; login: The optional user login.
 
; type: Choose between git or svn and web interface, a direct repository link, or a zip file download.  This can be one of '''git''', '''git web''', '''svn''', '''svn web''', or '''zip'''.  The default is '''git web'''.
: {{inote|Zip archive downloads are currently only supported for GitLab repositories.}}
 
; user: The name of the user page for the open source infrastructure.  This is notably different to the '''login''' parameter.  This will generally have precedence over the '''proj''' parameter.  The user page is treated in the same way as a project name.
 
; proj: The name of the project, consisting of a grouping of repositories on the open source infrastructure.  This defaults to '''flightgear'''.
 
; repo: The name of the repository, for example '''fgdata'''.  A project registered on one of the open source infrastructures generally allows for multiple repositories under that project name.  This defaults to '''flightgear'''.
 
; branch: The git or svn branch name.  As tags are simply branches in SVN repositories, this parameter can also be used for svn tags.  For git tags, simply append <code>/~</code> to the tag name.  This defaults to '''next''' or '''trunk''' for git and svn respectively.
: {{inote|Only used for SourceForge repositories.}}
 
; tag: Reserved for future use.  This will be used for a situation in which tags and branches are treated differently by an open source infrastructure site.
 
; path: The file path.
 
; commit: The commit identifier (git hash or svn revision number).  This defaults to '''next''' and '''HEAD''' for git and svn respectively.
: {{inote|Only used for SourceForge repositories.}}
 
; line: The line number(s) of the file to display.
:* For SourceForge and the Gitorious archive:  Use a single line number.
:* For GitHub either use:
:** A single line number, for example '''2'''.
:** Two line numbers separated with a hyphen ('''-'''), for example '''3-10'''.
 
; view:  View to display:
:* For SourceForge use one of '''tree''', '''log''', '''commit''', or '''rss'''.  The default is '''tree'''.
:* For GitHub use one of '''blob''', '''blame''', '''commits''' or '''raw'''.  The default is '''tree''' (which switches to '''raw''').
:* For the Gitorious archive use one of '''summary''', '''shortlog''', '''log''', '''blob''', '''commit''', '''commitdiff''', '''tree''', '''history''', or '''raw'''.  The default is '''blob''' if a path is given, '''commit''' if a commit is given, or '''summary''' otherwise.
 
; text: Text to display as the link label.  Overrides '''pre'''.
 
; pre: Prefix to a link label.
 
; post: Text to append.
 
; simplepath:  If set, this strips off the repository name from the URL label, leaving just the contents of the ''path'' parameter.
: {{inote|The ''text'' parameter will override this.}}
 
; full: If set, the full URL will be shown.
 
== Design ==
In this section, the following notation will be used:
; Angular brackets + lower case text <code><nowiki><xyz></nowiki></code>: Template parameters.
; Angular brackets + upper case text <code><nowiki><XYZ></nowiki></code>: Template constructed text.
; Square brackets <code><nowiki>[xyz]</nowiki></code>: Optional text, only added if the parameter is set.
; Or symbol <code>{{!}}</code>: The value on the left, if present, otherwise the value on the right of the symbol.
 
=== Overview ===
Independent of the '''site''' parameter, the general design is:
<nowiki><cmd> <opt> [<URL> <TEXT>] <post></nowiki>
 
Here the square brackets do not denote optional text, but will instead produce a Mediawiki link.  This can be modified by setting '''full = 1''' to produce:
<nowiki><cmd> <opt> <URL> <post></nowiki>
 
The URL is constructed differently for each of the categories of the '''site''' parameter.
 
=== Site: SourceForge ===
==== Project vs. developer page ====
For a normal SourceForge project and a SourceForge developer page, the base URL is respectively constructed as:
<nowiki><protocol>://<DOMAIN>/p/<proj>/<repo>/</nowiki>
<nowiki><protocol>://<DOMAIN>/u/<user>/<repo>/</nowiki>
 
This will be abstracted as:
<nowiki><protocol>://<DOMAIN>/<p|u>/<user|proj>/<repo>/</nowiki>
 
For the '''git''' and '''svn''' values of the '''type''' parameter, a login is allowed:
<nowiki><protocol>://[<login>@]<DOMAIN>/<p|u>/<user|proj>/<repo>/</nowiki>
 
==== SourceForge <URL> for 'type=git' ====
For this parameter value, the complete <code><URL></code> value will be:
<nowiki><protocol>://[<login>@]git.code.sf.net/<p|u>/<user|proj>/<repo>/</nowiki>
 
==== SourceForge <URL> for 'type=git web' ====
For this parameter value, the <code><URL></code> value will be:
<nowiki><protocol>://sourceforge.net/<p|u>/<user|proj>/<repo>/ci/<commit|branch>/<VIEW>/<path>[#l<line>]</nowiki>
 
The <code><VIEW></code> value for different values of '''view''' is:
; tree:  <code>tree/</code>.
; log: <code>log/?path{{=}}</code>.
; commit: nothing.
 
If the parameter setting '''view=rss''' is used, a different <code><URL></code> value is produced:
<nowiki><protocol>://sourceforge.net/<p|u>/<user|proj>/<repo>/feed/</nowiki>
 
==== SourceForge <URL> for 'type=svn' ====
For this parameter value, the <code><URL></code> value will instead be:
<nowiki><protocol>://[<login>@]svn.code.sf.net/<p|u>/<user|proj>/<repo>/<branch>[/<path>][@<commit>]</nowiki>
 
==== SourceForge <URL> for 'type=svn web' ====
For this parameter value, the <code><URL></code> value will be:
<nowiki><protocol>://sourceforge.net/<p|u>/<user|proj>/<repo>/<commit|HEAD>/<VIEW>/<branch>[/<path>][#l<line>]</nowiki>
 
The <code><VIEW></code> value for different values of '''view''' is:
; tree:  <code>tree/</code>.
; log: <code>log/?path{{=}}</code>.
 
If the parameter setting '''view=commit''' is used, a truncated <URL> value is produced:
<nowiki><protocol>://sourceforge.net/<p|u>/<user|proj>/<repo>/<commit|HEAD>/</nowiki>
 
If the parameter setting '''view=rss''' is used, a different <URL> value is produced:
<nowiki><protocol>://sourceforge.net/<p|u>/<user|proj>/<repo>/feed/</nowiki>
 
==== SourceForge URL <TEXT> for 'type=git' and 'type=git web' ====
The link text <code><TEXT></code>, if the '''full''' parameter is not set, will be:
<nowiki><user|proj>/<repo>/<commit|branch>[/<path>][#l<line>] <DESC></nowiki>
 
If the '''simplepath''' parameter is set, this changes to:
<nowiki>[/<path>][#l<line>] <DESC></nowiki>
 
If the '''pre''' parameter is supplied, this changes to:
<nowiki><pre>[/<path>][#l<line>] <DESC></nowiki>
 
The RSS feed is a special case in that <code><TEXT></code> will be one of:
<nowiki><user|proj>/<repo> <DESC></nowiki>
<nowiki><pre> <DESC></nowiki>
 
The description <code><DESC></code> is dependent on the '''view''' parameter:
; tree: Nothing.
; log: <code>log view</code>.
; commit: <code>commit view</code>.
; rss: <code>RSS feed</code>.
 
The '''text''' parameter trumps all, and <code><TEXT></code> is simply:
<nowiki><text></nowiki>
 
==== SourceForge URL <TEXT> for 'type=svn' and 'type=svn web' ====
The link text <code><TEXT></code>, if the '''full''' parameter is not set, will be:
<nowiki><user|proj>/<repo>/<branch>[/<path>][#l<line>][@r<commit>] <DESC></nowiki>
 
If the '''simplepath''' parameter is set, this changes to:
<nowiki>[/<path>][#l<line>][@r<commit>] <DESC></nowiki>
 
If the '''pre''' parameter is supplied, this changes to:
<nowiki><pre>[/<path>][#l<line>][@r<commit>] <DESC></nowiki>
 
The RSS feed is a special case in that <code><TEXT></code> will be one of:
<nowiki><user|proj>/<repo> <DESC></nowiki>
<nowiki><pre> <DESC></nowiki>
 
The description <code><DESC></code> is dependent on the '''view''' parameter:
; tree: Nothing.
; log: <code>log view</code>.
; commit: <code>commit view</code>.
; rss: <code>RSS feed</code>.
 
The '''text''' parameter trumps all, and <code><TEXT></code> is simply:
<nowiki><text></nowiki>
 
=== Site: GitHub ===
The base URL for GitHub repositories is:
<nowiki><protocol>://github.com/<user|proj>/<repo></nowiki>
 
This is modified by the '''view''' parameter value of '''raw''' as:
<nowiki><protocol>://raw.githubusercontent.com/<user|proj>/<repo></nowiki>
 
==== GitHub <URL> for 'type=git' ====
For this parameter value, the complete <code><URL></code> value will be identical to the base URL.
 
==== GitHub <URL> for 'type=git web' ====
For this parameter value, the <code><URL></code> value will be:
<nowiki><protocol>://github.com/<user|proj>/<repo>/<view>/<commit|branch>[/<path>][#L<line>]</nowiki>
 
The '''view=raw''' changes this to:
<nowiki><protocol>://raw.githubusercontent.com/<user|proj>/<repo>/<commit|branch>[/<path>][#L<line>]</nowiki>
 
==== GitHub URL <TEXT> ====
The link text <code><TEXT></code>, if the '''full''' parameter is not set, will be:
<nowiki>github/<user|proj>/<repo>/<commit|branch|HEAD>[/<path>][#L<line>]</nowiki>
 
If the '''simplepath''' parameter is set, this changes to:
<nowiki>[/<path>][#L<line>]</nowiki>
 
If the '''pre''' parameter is supplied, this changes to:
<nowiki><pre>[/<path>][#L<line>]</nowiki>
 
The '''text''' parameter trumps all, and <code><TEXT></code> is simply:
<nowiki><text></nowiki>
 
=== Site: GitLab ===
The base URL for GitLab repositories is:
<nowiki><protocol>://gitlab.com/<proj>[/<repo>]</nowiki>
 
==== GitLab <URL> for 'type=git' ====
For this parameter value, the complete <code><URL></code> value will be:
<nowiki><protocol>://gitlab.com/<proj>[/<repo>].git</nowiki>
 
==== GitLab <URL> for 'type=git web' ====
This is not implemented yet.  Please add new examples to allow this template to be extended.
 
==== GitLab <URL> for 'type=zip' ====
For this parameter value, the base zip file URL will be:
<nowiki><protocol>://gitlab.com/<proj>/<repo>/repository/archive.zip</nowiki>
 
If a branch, tag, or commit is specified, this will be added as a query:
<nowiki><protocol>://gitlab.com/<proj>/<repo>/repository/archive.zip[?ref=<commit|tag|branch>]</nowiki>
 
==== GitLab URL <TEXT> ====
This is not implemented yet.  Please add new examples to allow this template to be extended.
 
=== Site: Gitorious ===
The Gitorious URLs are predominantly query rather than path based.  And only the <code>https://</code> protocol is supported.  The base URL constructed by this template is:
<nowiki><protocol>://gitorious.org/<proj>/<repo></nowiki>
 
==== Gitorious <URL> for 'type=git' ====
For this parameter value, the complete <code><URL></code> value will be:
<nowiki><protocol>://gitorious.org/<proj>/<repo>.git</nowiki>
 
==== Gitorious <URL> for 'type=git web' ====
As the current archival system is based on queries &mdash; the text after the <code>?</code> character &mdash; absolutely any random path after the <code>gitorious.org/</code> domain name can be used.  But, for aesthetics, the project and repository name will be appended by this template.  The <code><URL></code> will be:
<nowiki><protocol>://gitorious.org/<proj>/<repo>?<QUERY>[#l<line>]</nowiki>
 
The <code><QUERY></code> string consists of parts for the project and repository (<code>p=</code>), the type of view (<code>a=</code>), the path (<code>f=</code>), and the commit, branch or tag (<code>h=</code> or <code>hb=</code>, depending on the view).
The <code><URL></code> fragment for the project and repository is constructed as:
<nowiki><protocol>://gitorious.org/<proj>/<repo>?p=<proj>:<repo>.git</nowiki>
 
The <code><URL></code> fragment for the view is constructed as:
<nowiki><protocol>://gitorious.org/<proj>/<repo>?a=<VIEW></nowiki>
 
Where <code><VIEW></code> is the value of the '''view''' parameter, if supplied, with the value of '''raw''' translated to <code>blob_plain</code>.  If not supplied, the value of <code>blob</code> is used if '''path''' is given, <code>commit</code> if '''commit''' is given, or <code>summary</code> otherwise.
The <code><URL></code> fragment for the path is constructed as:
<nowiki><protocol>://gitorious.org/<proj>/<repo>?f=<path></nowiki>
 
If the '''view''' parameter is set to one of '''blob''', '''raw''', or '''tree''', the <code><URL></code> fragment for the commit, branch or tag is constructed as:
<nowiki><protocol>://gitorious.org/<proj>/<repo>[?hb=<commit>|refs/heads/<branch>]</nowiki>
 
Otherwise it will be:
<nowiki><protocol>://gitorious.org/<proj>/<repo>[?h=<commit>|refs/heads/<branch>]</nowiki>
 
In summary, the full web URL will be:
<nowiki><protocol>://gitorious.org/<proj>/<repo>?p=<proj>:<repo>.git;a=<VIEW>[;f=<path>][;<h|hb>=<commit>|refs/heads/<branch>][#l<line>]</nowiki>
 
==== Gitorious URL <TEXT> ====
The link text <code><TEXT></code>, if the '''full''' parameter is not set, will be:
<nowiki><proj>/<repo>/<commit|branch|HEAD>[/<path>][#l<line>]</nowiki>
 
If the '''simplepath''' parameter is set, this changes to:
<nowiki>[/<path>][#l<line>]</nowiki>
 
If the '''pre''' parameter is supplied, this changes to:
<nowiki><pre>[/<path>][#l<line>]</nowiki>
 
The '''text''' parameter trumps all, and <code><TEXT></code> is simply:
<nowiki><text></nowiki>
 
=== Site: Generic ===
If the '''site''' parameter does not match one of the know open source infrastructures, then an attempt will be made to create a generic repository link.  The base URL for generic repositories is:
<nowiki><protocol>://[<login>@]<site>/<user|proj>[/<repo>]</nowiki>
 
==== Generic repository <URL> for 'type=git'====
For this parameter value, the complete <code><URL></code> value will be the base URL.
 
==== Generic repository <URL> for 'type=git web' ====
This is not implemented yet.  Please add new examples to allow this template to be extended.
 
==== Generic repository <URL> for 'type=svn' ====
For this parameter value, the complete <code><URL></code> value will be:
<nowiki><protocol>://[<login>@]<site>/<user|proj>[/<repo>]/<branch></nowiki>
 
The value of '''branch''' defaults to <code>trunk</code>.
 
==== Generic repository <URL> for 'type=svn web' ====
This is not implemented yet.  Please add new examples to allow this template to be extended.
 
==== Generic repository URL <TEXT> ====
This is not implemented yet.  Please add new examples to allow this template to be extended.
 
== Plain text ==
 
To create a URL or link as plain text and avoid external links, simply use the <code><nowiki>{{#tag:tagname|content}}</nowiki></code> [https://www.mediawiki.org/wiki/Help:Magic_words magic word] construct:
 
{{obr}}#tag:nowiki{{!}}
  {{obr}}repo link
  {{!}} full = 1
  {{cbr}}
{{cbr}}
 
{{#tag:nowiki|
  {{repo link
  | full = 1
  }}
}}
 
== Examples ==
=== SourceForge examples ===
==== FlightGear repository ====
===== The source repository =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/.
 
{{obr}}repo link
{{!}} site = sf
{{!}} proj = flightgear
{{!}} repo = flightgear
{{!}} text = The flightgear source repository
{{cbr}}.
 
{{repo link
| site = sf
| proj = flightgear
| repo = flightgear
| text = The flightgear source repository
}}.
 
===== Git clone =====
This is for <code><nowiki>git clone git://git.code.sf.net/p/flightgear/flightgear flightgear-flightgear</nowiki></code>.
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
  {{!}} site    = sf
  {{!}} cmd      = git clone
  {{!}} protocol = git
  {{!}} repo    = flightgear
  {{!}} type    = git
  {{!}} post    = flightgear-flightgear
  {{!}} full    = 1
{{cbr}}{{cbr}}{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
  | site    = sf
  | cmd      = git clone
  | repo    = flightgear
  | protocol = git
  | type    = git
  | post    = flightgear-flightgear
  | full    = 1
}}}}}}.
 
===== File with line number =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Main/fg_init.cxx#l1.
 
{{obr}}repo link
{{!}} site = sf
{{!}} repo = flightgear
{{!}} path = src/Main/fg_init.cxx
{{!}} line = 1
{{cbr}}.
 
{{repo link
| site = sf
| repo = flightgear
| path = src/Main/fg_init.cxx
| line = 1
}}.
 
===== File prefixed with $FLIGHTGEAR_SRC =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Main/fg_init.cxx.  The expected link text is "$FLIGHTGEAR_SRC/src/Main/fg_init.cxx".
 
{{obr}}repo link
{{!}} site = sf
{{!}} repo = flightgear
{{!}} path = src/Main/fg_init.cxx
{{!}} pre  = $FLIGHTGEAR_SRC
{{cbr}}.
 
{{repo link
| site = sf
| repo = flightgear
| path = src/Main/fg_init.cxx
| pre  = $FLIGHTGEAR_SRC
}}.
 
===== Branch =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/sportmodel/tree/.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = flightgear
{{!}} branch = sportmodel
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = flightgear
| branch = sportmodel
}}.
 
===== Tag =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/version/2016.1.1/~/tree/.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = flightgear
{{!}} branch = version/2016.1.1/~
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = flightgear
| branch = version/2016.1.1/~
}}.
 
===== Tag, history view =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/version/2016.1.1/~/log/?path=.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = flightgear
{{!}} branch = version/2016.1.1/~
{{!}} view  = log
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = flightgear
| branch = version/2016.1.1/~
| view  = log
}}.
 
===== Commit =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/f88d6418297e250138fda48f5a7d3e51bb3c543d/
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = flightgear
{{!}} commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
{{!}} view  = commit
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = flightgear
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
| view  = commit
}}.
 
===== Commit, history view =====
This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/f88d6418297e250138fda48f5a7d3e51bb3c543d/log/?path=
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = flightgear
{{!}} commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
{{!}} view  = log
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = flightgear
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
| view  = log
}}.
 
===== Repository clone =====
This is for the command <code><nowiki>git clone git://git.code.sf.net/p/flightgear/flightgear/ flightgear-flightgear</nowiki></code>
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
{{!}} site    = sf
{{!}} cmd      = git clone
{{!}} protocol = git
{{!}} type    = git
{{!}} repo    = flightgear
{{!}} post    = flightgear-flightgear
{{!}} full    = 1
{{cbr}}{{cbr}}{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
| site    = sf
| cmd      = git clone
| protocol = git
| type    = git
| repo    = flightgear
| post    = flightgear-flightgear
| full    = 1
}}}}}}.
 
Or as plain text:
 
{{obr}}#tag:nowiki{{!}}{{obr}}repo link
  {{!}} site    = sf
  {{!}} cmd      = git clone
  {{!}} protocol = git
  {{!}} type    = git
  {{!}} repo    = flightgear
  {{!}} post    = flightgear-flightgear
  {{!}} full    = 1
{{cbr}}{{cbr}}.
 
{{#tag:nowiki|{{repo link
  | site    = sf
  | cmd      = git clone
  | protocol = git
  | type    = git
  | repo    = flightgear
  | post    = flightgear-flightgear
  | full    = 1
}}}}.
 
==== SimGear repository ====
===== Non-web URL =====
This is a link to ssh://git.code.sf.net/p/flightgear/simgear.
 
{{obr}}repo link
{{!}} site    = sf
{{!}} protocol = ssh
{{!}} type    = git
{{!}} repo    = simgear
{{!}} full    = 1
{{cbr}}.
 
{{repo link
| site    = sf
| protocol = ssh
| type    = git
| repo    = simgear
| full    = 1
}}.
 
===== Simgear RSS feed =====
This is a link to https://sourceforge.net/p/flightgear/simgear/feed.
 
{{obr}}repo link
{{!}} site = sf
{{!}} repo = simgear
{{!}} view = rss
{{!}} text = Simgear RSS feed
{{cbr}}.
 
{{repo link
| site = sf
| repo = simgear
| view = rss
| text = Simgear RSS feed
}}.
 
Or without text:
{{obr}}repo link
{{!}} site  = sf
{{!}} login  = dummy_user                                  <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} repo  = simgear
{{!}} view  = rss
{{!}} branch = branches/release-2016.1                    <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} path  = simgear/                                    <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} commit = f88d6418297e250138fda48f5a7d3e51bb3c543d    <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} line  = 10                                          <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{cbr}}.
 
{{repo link
| site  = sf
| login  = dummy_user                              <!-- Dummy parameter, not to be used -->
| repo  = simgear
| view  = rss
| branch = branches/release-2016.1                  <!-- Dummy parameter, not to be used -->
| path  = simgear/                                <!-- Dummy parameter, not to be used -->
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d <!-- Dummy parameter, not to be used -->
| line  = 10                                      <!-- Dummy parameter, not to be used -->
}}.
 
==== FGAddon repository links ====
 
===== Branch (HEAD) =====
This is a link for https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/branches/release-3.4.0/Aircraft.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} type  = svn web
{{!}} repo  = fgaddon
{{!}} branch = branches/release-3.4.0
{{!}} path  = Aircraft
{{!}} text  = FG 3.4 add-on aircraft
{{cbr}}.
 
{{repo link
| site  = sf
| type  = svn web
| repo  = fgaddon
| branch = branches/release-3.4.0
| path  = Aircraft
| text  = FG 3.4 add-on aircraft
}}.
 
===== r1001 =====
This is a link for https://sourceforge.net/p/flightgear/fgaddon/1001.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} type  = svn web
{{!}} repo  = fgaddon
{{!}} commit = 1001
{{!}} view  = commit
{{cbr}}.
 
{{repo link
| site  = sf
| type  = svn web
| repo  = fgaddon
| commit = 1001
| view  = commit
}}.
 
===== Trunk (r1000) =====
This is a link for https://sourceforge.net/p/flightgear/fgaddon/1000/tree/trunk/Aircraft.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} type  = svn web
{{!}} repo  = fgaddon
{{!}} commit = 1000
{{!}} branch = trunk
{{!}} path  = Aircraft
{{cbr}}.
 
{{repo link
| site  = sf
| type  = svn web
| repo  = fgaddon
| commit = 1000
| branch = trunk
| path  = Aircraft
}}.
 
===== Trunk, real path =====
This is a link for https://svn.code.sf.net/p/flightgear/fgaddon/trunk.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} type  = svn
{{!}} repo  = fgaddon
{{!}} branch = trunk
{{!}} full  = 1
{{cbr}}.
 
{{repo link
| site  = sf
| type  = svn
| repo  = fgaddon
| branch = trunk
| full  = 1
}}.
 
===== Svn checkout =====
This is for returning <code><nowiki>svn co https://svn.code.sf.net/p/flightgear/fgaddon/branches/release-3.4.0/Aircraft/V22-Osprey</nowiki></code>
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
{{!}} site  = sf
{{!}} cmd    = svn co
{{!}} type  = svn
{{!}} repo  = fgaddon
{{!}} branch = branches/release-3.4.0
{{!}} path  = Aircraft/V22-Osprey
{{!}} full  = 1
{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
| site  = sf
| cmd    = svn co
| type  = svn
| repo  = fgaddon
| branch = branches/release-3.4.0
| path  = Aircraft/V22-Osprey
| full  = 1
}}}}}}.
 
===== Svn trunk checkout =====
This is for returning <code><nowiki>svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk flightgear-fgaddon</nowiki></code>
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
{{!}} site = sf
{{!}} cmd  = svn co
{{!}} type = svn
{{!}} repo = fgaddon
{{!}} post = flightgear-fgaddon
{{!}} full = 1
{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
| site = sf
| cmd  = svn co
| type = svn
| repo = fgaddon
| post = flightgear-fgaddon
| full = 1
}}}}}}.
 
===== Svn checkout (trunk@r1000) =====
This is for returning <code><nowiki>svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk@r1000</nowiki></code>
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
{{!}} site  = sf
{{!}} cmd    = svn co
{{!}} type  = svn
{{!}} repo  = fgaddon
{{!}} commit = 1000
{{!}} full  = 1
{{cbr}}{{cbr}}{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
| site  = sf
| cmd    = svn co
| type  = svn
| repo  = fgaddon
| commit = 1000
| full  = 1
}}}}}}.
 
===== File and line number link =====
 
This is for https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/trunk/Aircraft/14bis/14bis-set.xml#l12.
 
{{obr}}repo link
{{!}} site      = sf
{{!}} type      = svn web
{{!}} repo      = fgaddon
{{!}} path      = Aircraft/14bis/14bis-set.xml
{{!}} line      = 12
{{!}} branch    = trunk
{{!}} simplepath = 1
{{cbr}}.
 
{{repo link
| site      = sf
| type      = svn web
| repo      = fgaddon
| path      = Aircraft/14bis/14bis-set.xml
| line      = 12
| branch    = trunk
| simplepath = 1
}}.
 
===== File prefixed with $FG_AIRCRAFT =====
 
This is for https://sourceforge.net/p/flightgear/fgaddon/1234/tree/trunk/Aircraft/X15/X15-set.xml.  The expected link text is "$FG_AIRCRAFT/Aircraft/X15/X15-set.xml".
 
{{obr}}repo link
{{!}} site = sf
{{!}} type = svn web
{{!}} repo = fgaddon
{{!}} path = Aircraft/X15/X15-set.xml
{{!}} pre  = $FG_AIRCRAFT
{{cbr}}.
 
{{repo link
| site = sf
| type = svn web
| repo = fgaddon
| path = Aircraft/X15/X15-set.xml
| pre  = $FG_AIRCRAFT
}}.
 
===== File prefixed with $FG_AIRCRAFT and identified by commit =====
 
This is for https://sourceforge.net/p/flightgear/fgaddon/1234/tree/trunk/Aircraft/X15/X15-set.xml.  The expected link text is "$FG_AIRCRAFT/Aircraft/X15/X15-set.xml@1234".
 
{{obr}}repo link
{{!}} site  = sf
{{!}} type  = svn web
{{!}} repo  = fgaddon
{{!}} path  = Aircraft/X15/X15-set.xml
{{!}} commit = 1234
{{!}} pre    = $FG_AIRCRAFT
{{cbr}}.
 
{{repo link
| site  = sf
| type  = svn web
| repo  = fgaddon
| path  = Aircraft/X15/X15-set.xml
| commit = 1234
| pre    = $FG_AIRCRAFT
}}.
 
===== svn import =====
This should give:
<syntaxhighlight lang="bash">
svn import DaSH/ svn+ssh://<username>@svn.code.sf.net/p/flightgear/fgaddon/trunk/Aircraft/ -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at http://forum.flightgear.org/viewtopic.php?f=4&t=24495 ."
</syntaxhighlight>
 
{{obr}}#tag:syntaxhighlight{{!}}
{{obr}}repo link
  {{!}} cmd      = svn import DaSH/
  {{!}} repo    = fgaddon
  {{!}} protocol = svn+ssh
  {{!}} login    = <username>
  {{!}} type    = svn
  {{!}} path    = Aircraft/
  {{!}} post    = -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at <nowiki>http://forum.flightgear.org/viewtopic.php?f=4&t=24495</nowiki> ."
  {{!}} full    = 1
{{cbr}}
{{!}} lang = "sh"
{{cbr}}
 
{{#tag:syntaxhighlight|
{{repo link
  | cmd      = svn import DaSH/
  | repo    = fgaddon
  | protocol = svn+ssh
  | login    = <username>
  | type    = svn
  | path    = Aircraft/
  | post    = -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at http://forum.flightgear.org/viewtopic.php?f=4&t=24495 ."
  | full    = 1
}}
| lang = "sh"
}}
 
===== FGAddon RSS feed =====
This is a link to https://sourceforge.net/p/flightgear/fgaddon/feed.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} login  = dummy_user                  <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} repo  = fgaddon
{{!}} type  = svn web
{{!}} view  = rss
{{!}} branch = branches/release-2016.1    <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} path  = Aircraft/                  <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} commit = 1234                        <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{!}} line  = 200                        <nowiki><!-- Dummy parameter, not to be used --></nowiki>
{{cbr}}.
 
{{repo link
| site  = sf
| login  = dummy_user                  <!-- Dummy parameter, not to be used -->
| repo  = fgaddon
| type  = svn web
| view  = rss
| branch = branches/release-2016.1    <!-- Dummy parameter, not to be used -->
| path  = Aircraft/                  <!-- Dummy parameter, not to be used -->
| commit = 1234                        <!-- Dummy parameter, not to be used -->
| line  = 200                        <!-- Dummy parameter, not to be used -->
}}.
 
==== User fork of the FlightGear repository ====
This is for https://sourceforge.net/u/edauvergne/code-py-ogel/ci/python/tree/test.py#l23.
 
{{obr}}repo link
{{!}} site  = sf
{{!}} repo  = code-py-ogel
{{!}} branch = python
{{!}} path  = test.py
{{!}} line  = 23
{{!}} user  = edauvergne
{{cbr}}.
 
{{repo link
| site  = sf
| repo  = code-py-ogel
| branch = python
| path  = test.py
| line  = 23
| user  = edauvergne
}}.
 
=== GitHub examples ===
==== User repository ====
{{obr}}repo link
{{!}} site = gh
{{!}} user = hamzaalloush
{{!}} repo = fgradar-clone
{{cbr}}.
 
{{repo link
| site = gh
| user = hamzaalloush
| repo = fgradar-clone
}}.
 
==== User repository prefixed with $FG_ROOT ====
{{obr}}repo link
{{!}} site  = gith
{{!}} user  = bhugh
{{!}} repo  = Bombable
{{!}} line  = 30
{{!}} path  = Aircraft/A-10-Bombable/A-10-Bombable-set.xml
{{!}} pre  = $FG_ROOT
{{cbr}}.
 
{{repo link
| site  = gith
| user  = bhugh
| repo  = Bombable
| line  = 30
| path  = Aircraft/A-10-Bombable/A-10-Bombable-set.xml
| pre  = $FG_ROOT
}}.
 
=== GitLab examples ===
==== The FlightGear Multiplayer server software ====
This should produce <code><nowiki>git clone https://gitlab.com/fgms/fgms-0-x.git</nowiki></code>.
 
{{obr}}#tag:syntaxhighlight{{!}}
{{obr}}repo link
  {{!}} site = gitlab
  {{!}} cmd  = git clone
  {{!}} proj = fgms
  {{!}} repo = fgms-0-x
  {{!}} type = git
  {{!}} full = 1
{{cbr}}
{{!}} lang = "sh"
{{cbr}}
 
{{#tag:syntaxhighlight|
{{repo link
  | site  = gitlab
  | cmd  = git clone
  | proj  = fgms
  | repo  = fgms-0-x
  | type  = git
  | full  = 1
}}
| lang = "sh"
}}
 
==== Zip archive download ====
This is for https://gitlab.com/extra500/extra500/repository/archive.zip?ref=FG/2016.1.
 
{{obr}}repo link
{{!}} site  = gitlab
{{!}} proj  = extra500
{{!}} repo  = extra500
{{!}} branch = FG/2016.1
{{!}} type  = zip
{{!}} full  = 1
{{cbr}}
 
{{repo link
| site  = gitlab
| proj  = extra500
| repo  = extra500
| branch = FG/2016.1
| type  = zip
| full  = 1
}}
 
=== Gitorious archive examples ===
{{note|The Gitorious open source infrastructure is locked in a read-only archived state.}}
 
==== The old FlightGear source repository ====
This is for the archived flightgear repository at https://gitorious.org/fg/flightgear.git.  The automatically created URL, which is equivalent, should be https://gitorious.org/fg/flightgear?p=fg:flightgear.git;a=summary.
 
{{obr}}repo link
{{!}} site = gito
{{!}} proj = fg
{{!}} repo = flightgear
{{!}} text = The archived flightgear source code repository at Gitorious
{{cbr}}.
 
{{repo link
| site = gito
| proj = fg
| repo = flightgear
| text = The archived flightgear source code repository at Gitorious
}}.
 
==== The historic fgdata repository ====
This is for the historic repository https://gitorious.org/fg/fgdata.git.  The automatically created URL, which is equivalent, should be https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=summary.
 
 
{{obr}}repo link
{{!}} site = gito
{{!}} proj = fg
{{!}} repo = fgdata
{{!}} text = The archived fgdata repository at Gitorious, with full history from 2000-2015
{{cbr}}.
 
{{repo link
| site = gito
| proj = fg
| repo = fgdata
| text = The archived fgdata repository at Gitorious, with full history from 2000-2015
}}.
 
==== Git clone ====
This is for cloning the historic fgdata repository with <code><nowiki>git clone https://gitorious.org/fg/fgdata.git</nowiki></code>.
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
  {{!}} site    = gito
  {{!}} cmd      = git clone
  {{!}} proj    = fg
  {{!}} repo    = fgdata
  {{!}} type    = git
  {{!}} full    = 1
{{cbr}}{{cbr}}{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
  | site    = gito
  | cmd      = git clone
  | proj    = fg
  | repo    = fgdata
  | type    = git
  | full    = 1
}}}}}}.
 
==== File with line number ====
This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule#l1.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = fg
{{!}} repo  = hoorays-fgdata
{{!}} view  = blob
{{!}} branch = topics/scriptable-ai-submodule
{{!}} path  = Nasal/ai/ai.nas
{{!}} line  = 1
{{!}} text  = Scripted AI Objects repo
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = fg
| repo  = hoorays-fgdata
| view  = blob
| branch = topics/scriptable-ai-submodule
| path  = Nasal/ai/ai.nas
| line  = 1
| text  = Scripted AI Objects repo
}}.
 
==== File prefixed with $NASAL_SRC ====
This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule.
 
{{obr}}repo link
{{!}} site      = gito
{{!}} proj      = fg
{{!}} repo      = hoorays-fgdata
{{!}} view      = blob
{{!}} branch    = topics/scriptable-ai-submodule
{{!}} path      = Nasal/ai/ai.nas
{{!}} pre        = $NASAL_SRC
{{!}} simplepath = 1
{{cbr}}.
 
{{repo link
| site      = gito
| proj      = fg
| repo      = hoorays-fgdata
| view      = blob
| branch    = topics/scriptable-ai-submodule
| path      = Nasal/ai/ai.nas
| pre        = $NASAL_SRC
| simplepath = 1
}}.
 
===== Raw view =====
This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob_plain;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = fg
{{!}} repo  = hoorays-fgdata
{{!}} view  = raw
{{!}} branch = topics/scriptable-ai-submodule
{{!}} path  = Nasal/ai/ai.nas
{{!}} full  = 1
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = fg
| repo  = hoorays-fgdata
| view  = raw
| branch = topics/scriptable-ai-submodule
| path  = Nasal/ai/ai.nas
| full  = 1
}}.
 
==== Commit ====
This is for https://gitorious.org/nasal-standalone/nasal-experiments?p=nasal-standalone:nasal-experiments.git;a=commit;h=9b2d59c316d03b83cfb4352a38b865aa29f4c280.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = nasal-standalone
{{!}} repo  = nasal-experiments
{{!}} view  = commit
{{!}} commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
{{!}} pre    = $NASAL_SRC
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = nasal-standalone
| repo  = nasal-experiments
| view  = commit
| commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
| pre    = $NASAL_SRC
}}.
 
==== Commit with file path ====
This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Nasal/canvas/map/TFC.lcontroller;hb=c78b2f936891bffad49e27d84d952a0d45540eef
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = fg
{{!}} repo  = fgdata
{{!}} path  = Nasal/canvas/map/TFC.lcontroller
{{!}} view  = blob
{{!}} commit = c78b2f936891bffad49e27d84d952a0d45540eef
{{!}} full  = 1
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = fg
| repo  = fgdata
| path  = Nasal/canvas/map/TFC.lcontroller
| view  = blob
| commit = c78b2f936891bffad49e27d84d952a0d45540eef
| full  = 1
}}.
 
==== Commitdiff ====
This is for https://gitorious.org/nasal-standalone/nasal-experiments?p=nasal-standalone:nasal-experiments.git;a=commitdiff;h=9b2d59c316d03b83cfb4352a38b865aa29f4c280.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = nasal-standalone
{{!}} repo  = nasal-experiments
{{!}} view  = commitdiff
{{!}} commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
{{!}} pre    = $NASAL_SRC
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = nasal-standalone
| repo  = nasal-experiments
| view  = commitdiff
| commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
| pre    = $NASAL_SRC
}}.
 
==== Main views ====
===== Summary view =====
This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=summary.
 
{{obr}}repo link
{{!}} site = gito
{{!}} proj = fg
{{!}} repo = fgdata
{{!}} view = summary
{{!}} full = 1
{{cbr}}.
 
{{repo link
| site = gito
| proj = fg
| repo = fgdata
| view = summary
| full = 1
}}.
 
===== Shortlog view =====
This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=shortlog.
 
{{obr}}repo link
{{!}} site = gito
{{!}} proj = fg
{{!}} repo = fgdata
{{!}} view = shortlog
{{!}} full = 1
{{cbr}}.
 
{{repo link
| site = gito
| proj = fg
| repo = fgdata
| view = shortlog
| full = 1
}}.
 
===== Log view =====
This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=log;h=4c03a4968d2844c9c8ba734116da3478a1bebb38.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = fg
{{!}} repo  = fgdata
{{!}} view  = log
{{!}} commit = 4c03a4968d2844c9c8ba734116da3478a1bebb38
{{!}} full  = 1
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = fg
| repo  = fgdata
| view  = log
| commit = 4c03a4968d2844c9c8ba734116da3478a1bebb38
| full  = 1
}}.
 
===== Log with branch =====
This is for https://gitorious.org/fg/hoorays-flightgear?p=fg:hoorays-flightgear.git;a=log;h=refs/heads/topics/ada-support.
 
{{obr}}repo link
{{!}} site  = gito
{{!}} proj  = fg
{{!}} repo  = hoorays-flightgear
{{!}} view  = log
{{!}} branch = topics/ada-support
{{!}} full  = 1
{{cbr}}.
 
{{repo link
| site  = gito
| proj  = fg
| repo  = hoorays-flightgear
| view  = log
| branch = topics/ada-support
| full  = 1
}}.
 
=== Generic repository handling ===
==== OpenSceneGraph svn repository ====
This should create <code><nowiki>svn co http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk osg</nowiki></code>.
 
{{obr}}#tag:code{{!}}{{obr}}#tag:nowiki{{!}}{{obr}}repo link
{{!}} site    = svn.openscenegraph.org
{{!}} cmd      = svn co
{{!}} protocol = http
{{!}} type    = svn
{{!}} proj    = osg
{{!}} repo    = OpenSceneGraph
{{!}} post    = osg
{{!}} full    = 1
{{cbr}}{{cbr}}{{cbr}}.
 
{{#tag:code|{{#tag:nowiki|{{repo link
| site    = svn.openscenegraph.org
| cmd      = svn co
| protocol = http
| type    = svn
| proj    = osg
| repo    = OpenSceneGraph
| post    = osg
| full    = 1
}}}}}}.
 
== Related templates ==
{{repo link/doc related}}
 
== See also ==
* [[:Category:Link templates]]
 
}}


[[Category:Link templates]]
</noinclude>
</noinclude>

Latest revision as of 09:20, 8 July 2019

Caution  This template, via its subtemplates, is used by many pages. Therefore modifications will propagate throughout the FlightGear wiki and have a large effect. Changes should be carefully tested on a /sandbox subpage or as a user subpage before being implemented here.

flightgear/flightgear/next


The following template description is not displayed when the template is inserted in an article.

Goal

This is designed to be a master template for creating links or URLs for all types of online version control repository. This includes for SourceForge, GitHub, GitLab, the Gitorious archive, and basic support for generic online repositories. The detailed documentation below, as well as the examples, will help to understand the full family of subtemplates that are based on the master {{repo link}} template.

Although it can be used directly for full flexibility, this is not recommended. Rather the large family of subtemplates that are interfaces to this master template should be used. This allows for better long-term management of the wiki (for example, by using the Special:WhatLinksHere page to find all usages of the subtemplates).

Note This template may add an external link. You may therefore have to answer an anti-spam security question before your edit is saved.

Usage

{{repo link
| site       =
| cmd        =
| opt        =
| protocol   =
| login      =
| type       =
| user       =
| proj       =
| repo       =
| branch     =
| tag        =
| commit     =
| path       =
| line       =
| post       =

| view       =
| text       =
| pre        =
| simplepath =
| full       =
}}

All parameters except site are optional.

Parameter Description Abbreviated
parameter
Numbered
parameter
Status
site Points the template to a repository host:
  • For SourceForge use either s, sf or sourceforge.
  • For GitHub use either gh, gith or github.
  • For GitLab use either gl, gitl or gitlab.
  • For the Gitorious archive use either g, go, gito or gitorious.
  • For generic repositories, the site parameter will be interpreted as the domain name.
mandatory
cmd An optional command line tool name + options to prepend to the URL. For example git clone. optional
opt Any additional options to show after cmd, but before the URL.
Note The separation of cmd and opt is for future non-CLI handling of a standardised set of cmd parameter values
optional
protocol The URL protocol, for example https, http, ssh, git, svn. This defaults to https. optional
login The optional user login. This should not to be confused with the user parameter. optional
type Choose between the web interface, a direct repository link, or a zip file download. This can be one of git, git web, svn, svn web, zip. See the {{* zip file}} templates for a simplified interface for the zip files. The default is git web.
Note Zip archive downloads are currently only supported for GitHub and GitLab repositories.
optional
user The name of the user page for the open source infrastructure. This is notably different to the login parameter. This will have precedence over the proj parameter. The user page is treated in the same way as a project name. optional
proj The name of the project, consisting of a grouping of repositories on the open source infrastructure. optional
repo The name of the repository. A project registered on one of the open source infrastructures generally allows for multiple repositories under that project name. optional
branch The branch name. As tags are simply branches in SVN repositories, this parameter can also be used for svn tags. This defaults to next or trunk for git and svn respectively. For SourceForge git repositories, if the character / is present in the branch name, the text /~ must be appended to the branch. optional
tag The repository tag name. For SourceForge git repositories, if the character / is present in the tag name, the text /~ must be appended to the tag. optional
commit The commit identifier (git hash or svn revision number). This defaults to HEAD. optional
path The file or directory path. optional
line The line number(s) of the file to display.
  • For SourceForge and the Gitorious archive: Use a single line number.
  • For GitHub either use:
    • A single line number, for example 2.
    • Two line numbers separated with a hyphen (-), for example 3-10.
optional
post Text to append. This is forms a set with the parameter cmd and opt. For example it can represent any command line options that come after the URL. optional
view View to display:
  • For SourceForge use one of tree, log, commit, or rss. If a commit is specified (the commit parameter is set and path is not), the default is commit. Otherwise the default is tree.
  • For GitHub use one of blob, blame, commit, commits or raw. The default is tree.
  • The GitLab interface for type = git web is not yet implemented in the master {{repo link}} template, so the view parameter currently does nothing.
  • For the Gitorious archive use one of summary, shortlog, log, blob, commit, commitdiff, patch, tree, history, or raw. The default is commit if a merge request is supplied, blob if a path is given, commit if a commit is given, shortlog if a branch is given, or summary otherwise.
optional
text Text to display as the link label. Overrides pre. optional
pre Prefix to a link label. optional
simplepath If set, this strips off the repository name from the URL label, leaving just the contents of the path parameter.
Note The text parameter will override this.
optional
full If set to 1, the full URL will be shown rather than any text label. optional

Design

In this section, the following notation will be used:

Angular brackets + lower case text <xyz>
Template parameters.
Angular brackets + upper case text <XYZ>
Template constructed text.
Square brackets [xyz]
Optional text, only added if the parameter is set.
Or symbol |
The value on the left, if present, otherwise the value on the right of the symbol.

Overview

Independent of the site parameter, the general design is:

<cmd> <opt> [<URL> <TEXT>] <post>

Here the square brackets do not denote optional text, but will instead produce a Mediawiki link. This can be modified by setting full = 1 to produce:

<cmd> <opt> <URL> <post>

The URL is constructed differently for each of the categories of the site parameter.

Site: SourceForge

Project vs. developer page

For a normal SourceForge project and a SourceForge developer page, the base URL is respectively constructed as:

<protocol>://<DOMAIN>/p/<proj>/<repo>/
<protocol>://<DOMAIN>/u/<user>/<repo>/

This will be abstracted as:

<protocol>://<DOMAIN>/<u|p>/<user|proj>/<repo>/

For the type parameter value of git or svn, a login is allowed:

<protocol>://[<login>@]<DOMAIN>/<u|p>/<user|proj>/<repo>/

SourceForge <URL> for 'type=git'

For this parameter value, the complete <URL> value will be:

<protocol>://[<login>@]git.code.sf.net/<u|p>/<user|proj>/<repo>/

SourceForge <URL> for 'type=git web'

For this parameter value, the <URL> value will be:

<protocol>://sourceforge.net/<u|p>/<user|proj>/<repo>/ci/<commit|branch>/<VIEW>/<path>[#l<line>]

The <VIEW> value for different values of view is:

tree
tree/.
log
log/?path=.
commit
nothing.

If the parameter setting view=rss is used, a different <URL> value is produced:

<protocol>://sourceforge.net/<u|p>/<user|proj>/<repo>/feed/

SourceForge <URL> for 'type=svn'

For this parameter value, the <URL> value will instead be:

<protocol>://[<login>@]svn.code.sf.net/<u|p>/<user|proj>/<repo>/<branch>[/<path>][@<commit>]

SourceForge <URL> for 'type=svn web'

For this parameter value, the <URL> value will be:

<protocol>://sourceforge.net/<u|p>/<user|proj>/<repo>/<commit|HEAD>/<VIEW>/<branch>[/<path>][#l<line>]

The <VIEW> value for different values of view is:

tree
tree/.
log
log/?path=.

If the parameter setting view=commit is used, a truncated <URL> value is produced:

<protocol>://sourceforge.net/<u|p>/<user|proj>/<repo>/<commit|HEAD>/

If the parameter setting view=rss is used, a different <URL> value is produced:

<protocol>://sourceforge.net/<u|p>/<user|proj>/<repo>/feed/

SourceForge URL <TEXT> for 'type=git' and 'type=git web'

The link text <TEXT>, if the full parameter is not set, will be:

<user|proj>/<repo>/<commit|branch>[/<path>][#l<line>] <DESC>

If the simplepath parameter is set, this changes to:

[/<path>][#l<line>] <DESC>

If the pre parameter is supplied, this changes to:

<pre>[/<path>][#l<line>] <DESC>

The RSS feed is a special case in that <TEXT> will be one of:

<user|proj>/<repo> <DESC>
<pre> <DESC>

The description <DESC> is dependent on the view parameter:

tree
Nothing.
log
log view.
commit
commit view.
rss
RSS feed.

The text parameter trumps all, and <TEXT> is simply:

<text>

SourceForge URL <TEXT> for 'type=svn' and 'type=svn web'

The link text <TEXT>, if the full parameter is not set, will be:

<user|proj>/<repo>/<branch>[/<path>][#l<line>][@r<commit>] <DESC>

If the simplepath parameter is set, this changes to:

[/<path>][#l<line>][@r<commit>] <DESC>

If the pre parameter is supplied, this changes to:

<pre>[/<path>][#l<line>][@r<commit>] <DESC>

The RSS feed is a special case in that <TEXT> will be one of:

<user|proj>/<repo> <DESC>
<pre> <DESC>

The description <DESC> is dependent on the view parameter:

tree
Nothing.
log
log view.
commit
commit view.
rss
RSS feed.

The text parameter trumps all, and <TEXT> is simply:

<text>

Site: GitHub

The base URL for GitHub repositories is:

<protocol>://github.com/<user|proj>/<repo>

GitHub <URL> for 'type=git'

For this parameter value, the complete <URL> value will be:

<protocol>://github.com/<user|proj>/<repo>.git

GitHub <URL> for 'type=git web'

For this parameter value, the <URL> value will be:

<protocol>://github.com/<user|proj>/<repo>/<view>/<commit|branch>[/<path>][#L<line>]

GitHub <URL> for 'type=zip'

For this parameter value, the zip file URL will be:

<protocol>://github.com/<proj>/<repo>/archive/<commit|tag|branch>.zip

If neither a commit, branch, nor tag is specified, the URL will default to:

<protocol>://github.com/<proj>/<repo>/archive/master.zip

GitHub URL <TEXT> for 'type=git' and 'type=git web'

The link text <TEXT>, if the full parameter is not set, will be:

github/<user|proj>/<repo>/<commit|branch|HEAD>[/<path>][#L<line>]

If the simplepath parameter is set, this changes to:

[/<path>][#L<line>]

If the pre parameter is supplied, this changes to:

<pre>[/<path>][#L<line>]

The text parameter trumps all, and <TEXT> is simply:

<text>

GitHub URL <TEXT> for 'type=zip'

The link text <TEXT>, if the full parameter is not set, will be:

github/<user|proj>/<repo>/[<commit|tag|branch>] zip file

If the simplepath parameter is set, this changes to:

 zip file

If the pre parameter is supplied, this changes to:

<pre> zip file

The text parameter trumps all, and <TEXT> is simply:

<text>

Site: GitLab

The base URL for GitLab repositories is:

<protocol>://gitlab.com/<proj>[/<repo>]

GitLab <URL> for 'type=git'

For this parameter value, the complete <URL> value will be:

<protocol>://gitlab.com/<proj>[/<repo>].git

GitLab <URL> for 'type=git web'

This is not implemented yet. Please add new examples to allow this template to be extended.

GitLab <URL> for 'type=zip'

For this parameter value, the base zip file URL will be:

<protocol>://gitlab.com/<proj>/<repo>/repository/archive.zip

If a branch, tag, or commit is specified, this will be added as a query:

<protocol>://gitlab.com/<proj>/<repo>/repository/archive.zip[?ref=<commit|tag|branch>]

GitLab URL <TEXT>

This is not implemented yet. Please add new examples to allow this template to be extended.

Site: Gitorious

The Gitorious URLs are predominantly query rather than path based. And only the https:// protocol is supported. The base URL constructed by this template is:

<protocol>://gitorious.org/<proj>/<repo>

Gitorious <URL> for 'type=git'

For this parameter value, the complete <URL> value will be:

<protocol>://gitorious.org/<proj>/<repo>.git

Gitorious <URL> for 'type=git web'

As the current archival system is based on queries — the text after the ? character — absolutely any random path after the gitorious.org/ domain name can be used. But, for aesthetics, the project and repository name will be appended by this template. The <URL> will be:

<protocol>://gitorious.org/<proj>/<repo>?<QUERY>[#l<line>]

The <QUERY> string consists of parts for the project and repository (p=), the type of view (a=), the path (f=), and the commit, branch or tag (h= or hb=, depending on the view). The <URL> fragment for the project and repository is constructed as:

<protocol>://gitorious.org/<proj>/<repo>?p=<proj>:<repo>.git

The <URL> fragment for the view is constructed as:

<protocol>://gitorious.org/<proj>/<repo>?a=<VIEW>

Where <VIEW> is the value of the view parameter, if supplied, with the value of raw translated to blob_plain. If not supplied, the value of blob is used if path is given, commit if commit is given, or summary otherwise. The <URL> fragment for the path is constructed as:

<protocol>://gitorious.org/<proj>/<repo>?f=<path>

If the view parameter is set to one of blob, raw, or tree, the <URL> fragment for the commit, branch or tag is constructed as:

<protocol>://gitorious.org/<proj>/<repo>[?hb=refs/merge-requests/<mr>|<commit>|refs/heads/<branch>]

Otherwise it will be:

<protocol>://gitorious.org/<proj>/<repo>[?h=refs/merge-requests/<mr>|<commit>|refs/heads/<branch>]

In summary, the full web URL will be:

<protocol>://gitorious.org/<proj>/<repo>?p=<proj>:<repo>.git;a=<VIEW>[;f=<path>][;<h|hb>=refs/merge-requests/<mr>|<commit>|refs/heads/<branch>][#l<line>]

Gitorious URL <TEXT>

The link text <TEXT>, if the full parameter is not set, will be:

<proj>/<repo>/<commit|branch|HEAD>[/<path>][#l<line>]

If the simplepath parameter is set, this changes to:

[/<path>][#l<line>]

If the pre parameter is supplied, this changes to:

<pre>[/<path>][#l<line>]

The text parameter trumps all, and <TEXT> is simply:

<text>

Site: Generic

If the site parameter does not match one of the know open source infrastructures, then an attempt will be made to create a generic repository link. The base URL for generic repositories is:

<protocol>://[<login>@]<site>/<user|proj>[/<repo>]

Generic repository <URL> for 'type=git'

For this parameter value, the complete <URL> value will be the base URL.

Generic repository <URL> for 'type=git web'

This is not implemented yet. Please add new examples to allow this template to be extended.

Generic repository <URL> for 'type=svn'

For this parameter value, the complete <URL> value will be:

<protocol>://[<login>@]<site>/<user|proj>[/<repo>]/<branch>

The value of branch defaults to trunk.

Generic repository <URL> for 'type=svn web'

This is not implemented yet. Please add new examples to allow this template to be extended.

Generic repository URL <TEXT>

This is not implemented yet. Please add new examples to allow this template to be extended.


Plain text

To create a URL or link as plain text and avoid external links, simply use the {{#tag:tagname|content}} magic word construct:

{{#tag:nowiki|
  {{repo link
  | full = 1
  }}
}}

https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/

To use the <code> tags:

{{#tag:code|{{#tag:nowiki|
  {{repo link
  | full = 1
  }}
}}}}

https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/

Examples

SourceForge examples

FlightGear repository

The source repository

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/.

{{repo link
| site = sf
| proj = flightgear
| repo = flightgear
| text = The flightgear source repository
}}.

The flightgear source repository.

Git clone

This is for git clone git://git.code.sf.net/p/flightgear/flightgear flightgear-flightgear.

{{#tag:code|{{#tag:nowiki|{{repo link
  | site     = sf
  | cmd      = git clone
  | protocol = git
  | repo     = flightgear
  | type     = git
  | post     = flightgear-flightgear
  | full     = 1
}}}}}}.

git clone git://git.code.sf.net/p/flightgear/flightgear/ flightgear-flightgear.

File with line number

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Main/fg_init.cxx#l1.

{{repo link
| site = sf
| repo = flightgear
| path = src/Main/fg_init.cxx
| line = 1
}}.

flightgear/flightgear/next/src/Main/fg_init.cxx#l1.

File prefixed with $FLIGHTGEAR_SRC

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Main/fg_init.cxx. The expected link text is "$FLIGHTGEAR_SRC/src/Main/fg_init.cxx".

{{repo link
| site = sf
| repo = flightgear
| path = src/Main/fg_init.cxx
| pre  = $FLIGHTGEAR_SRC
}}.

$FLIGHTGEAR_SRC/src/Main/fg_init.cxx.

Branch

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/sportmodel/tree/.

{{repo link
| site   = sf
| repo   = flightgear
| branch = sportmodel
}}.

flightgear/flightgear/sportmodel.

Tag

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/version/2016.1.1/~/tree/.

{{repo link
| site = sf
| repo = flightgear
| tag  = version/2016.1.1/~
}}.

flightgear/flightgear/version/2016.1.1/~.

Tag, history view

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/version/2016.1.1/~/log/?path=.

{{repo link
| site = sf
| repo = flightgear
| tag  = version/2016.1.1/~
| view = log
}}.

flightgear/flightgear/version/2016.1.1/~ log view.

Commit

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/f88d6418297e250138fda48f5a7d3e51bb3c543d/

{{repo link
| site   = sf
| repo   = flightgear
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
| view   = commit
}}.

flightgear/flightgear/f88d6418297e250138fda48f5a7d3e51bb3c543d commit view.

Or:

{{repo link
| site   = sf
| repo   = flightgear
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
}}.

flightgear/flightgear/f88d6418297e250138fda48f5a7d3e51bb3c543d commit view.

Commit, history view

This is a link to https://sourceforge.net/p/flightgear/flightgear/ci/f88d6418297e250138fda48f5a7d3e51bb3c543d/log/?path=

{{repo link
| site   = sf
| repo   = flightgear
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d
| view   = log
}}.

flightgear/flightgear/f88d6418297e250138fda48f5a7d3e51bb3c543d log view.

Repository clone

This is for the command git clone git://git.code.sf.net/p/flightgear/flightgear/ flightgear-flightgear

{{#tag:code|{{#tag:nowiki|{{repo link
| site     = sf
| cmd      = git clone
| protocol = git
| type     = git
| repo     = flightgear
| post     = flightgear-flightgear
| full     = 1
}}}}}}.

git clone git://git.code.sf.net/p/flightgear/flightgear/ flightgear-flightgear.

Or as plain text:

{{#tag:nowiki|{{repo link
  | site     = sf
  | cmd      = git clone
  | protocol = git
  | type     = git
  | repo     = flightgear
  | post     = flightgear-flightgear
  | full     = 1
}}}}.

git clone git://git.code.sf.net/p/flightgear/flightgear/ flightgear-flightgear.

SimGear repository

Non-web URL

This is a link to ssh://git.code.sf.net/p/flightgear/simgear.

{{repo link
| site     = sf
| protocol = ssh
| type     = git
| repo     = simgear
| full     = 1
}}.

ssh://git.code.sf.net/p/flightgear/simgear/.

Simgear RSS feed

This is a link to https://sourceforge.net/p/flightgear/simgear/feed.

{{repo link
| site = sf
| repo = simgear
| view = rss
| text = Simgear RSS feed
}}.

Simgear RSS feed.

Or without text:

{{repo link
| site   = sf
| login  = dummy_user                                  <!-- Dummy parameter, not to be used -->
| repo   = simgear
| view   = rss
| branch = branches/release-2016.1/~                   <!-- Dummy parameter, not to be used -->
| path   = simgear/                                    <!-- Dummy parameter, not to be used -->
| commit = f88d6418297e250138fda48f5a7d3e51bb3c543d    <!-- Dummy parameter, not to be used -->
| line   = 10                                          <!-- Dummy parameter, not to be used -->
}}.

flightgear/simgear RSS feed.

FGData repository links

$FG_ROOT prefix and a commit
{{repo link
| site   = sf
| type   = git web
| repo   = fgdata
| path   = AI/nimitz_demo.xml
| commit = 7b53516a9619f598721d7ee34d6a446367e9d9cd
| line   = 85
| pre    = $FG_ROOT
}}

$FG_ROOT/AI/nimitz_demo.xml#l85 (commit 7b53516a9619f598721d7ee34d6a446367e9d9cd)

FGMeta repository

Raw view

This is a link to https://sourceforge.net/p/flightgear/fgmeta/ci/next/tree/download_and_compile.sh?format=raw.

{{repo link
| site = sf
| repo = fgmeta
| path = download_and_compile.sh
| view = raw
| full = 1
}}.

https://sourceforge.net/p/flightgear/fgmeta/ci/next/tree/download_and_compile.sh?format=raw.

FGAddon repository links

Branch

This is a link for https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/branches/release-3.4.0/Aircraft.

{{repo link
| site   = sf
| type   = svn web
| repo   = fgaddon
| branch = branches/release-3.4.0
| path   = Aircraft
| text   = FG 3.4 add-on aircraft
}}.

FG 3.4 add-on aircraft.

Tag

This is a link for https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/branches/release-3.4.0/Aircraft. Although branches/relax-3.4.0 is a branch, this tests the tag parameter.

{{repo link
| site = sf
| type = svn web
| repo = fgaddon
| tag  = branches/release-3.4.0
| path = Aircraft
| full = 1
}}.

https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/branches/release-3.4.0/Aircraft.

r1001

This is a link for https://sourceforge.net/p/flightgear/fgaddon/1001.

{{repo link
| site   = sf
| type   = svn web
| repo   = fgaddon
| commit = 1001
| view   = commit
}}.

flightgear/fgaddon@r1001 commit view.

r1001, default view

This is a link for https://sourceforge.net/p/flightgear/fgaddon/1001.

{{repo link
| site   = sf
| type   = svn web
| repo   = fgaddon
| commit = 1001
}}.

flightgear/fgaddon@r1001 commit view.

Trunk (r1000)

This is a link for https://sourceforge.net/p/flightgear/fgaddon/1000/tree/trunk/Aircraft.

{{repo link
| site   = sf
| type   = svn web
| repo   = fgaddon
| commit = 1000
| branch = trunk
| path   = Aircraft
}}.

flightgear/fgaddon/trunk/Aircraft@r1000.

Trunk, real path

This is a link for https://svn.code.sf.net/p/flightgear/fgaddon/trunk.

{{repo link
| site   = sf
| type   = svn
| repo   = fgaddon
| branch = trunk
| full   = 1
}}.

https://svn.code.sf.net/p/flightgear/fgaddon/trunk.

Svn checkout

This is for returning svn co https://svn.code.sf.net/p/flightgear/fgaddon/branches/release-3.4.0/Aircraft/V22-Osprey

{{#tag:code|{{#tag:nowiki|{{repo link
| site   = sf
| cmd    = svn co
| type   = svn
| repo   = fgaddon
| branch = branches/release-3.4.0
| path   = Aircraft/V22-Osprey
| full   = 1
}}.

svn co https://svn.code.sf.net/p/flightgear/fgaddon/branches/release-3.4.0/Aircraft/V22-Osprey.

Svn trunk checkout

This is for returning svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk flightgear-fgaddon

{{#tag:code|{{#tag:nowiki|{{repo link
| site = sf
| cmd  = svn co
| type = svn
| repo = fgaddon
| post = flightgear-fgaddon 
| full = 1
}}.

svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk flightgear-fgaddon.

Svn checkout (trunk@r1000)

This is for returning svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk@r1000

{{#tag:code|{{#tag:nowiki|{{repo link
| site   = sf
| cmd    = svn co
| type   = svn
| repo   = fgaddon
| commit = 1000
| full   = 1
}}}}}}.

svn co https://svn.code.sf.net/p/flightgear/fgaddon/trunk@r1000.

File and line number link

This is for https://sourceforge.net/p/flightgear/fgaddon/HEAD/tree/trunk/Aircraft/14bis/14bis-set.xml#l12.

{{repo link
| site       = sf
| type       = svn web
| repo       = fgaddon
| path       = Aircraft/14bis/14bis-set.xml
| line       = 12
| branch     = trunk
| simplepath = 1
}}.

Aircraft/14bis/14bis-set.xml#l12.

File prefixed with $FG_AIRCRAFT

This is for https://sourceforge.net/p/flightgear/fgaddon/1234/tree/trunk/Aircraft/X15/X15-set.xml. The expected link text is "$FG_AIRCRAFT/Aircraft/X15/X15-set.xml".

{{repo link
| site = sf
| type = svn web
| repo = fgaddon
| path = Aircraft/X15/X15-set.xml
| pre  = $FG_AIRCRAFT
}}.

$FG_AIRCRAFT/Aircraft/X15/X15-set.xml.

File prefixed with $FG_AIRCRAFT and identified by commit

This is for https://sourceforge.net/p/flightgear/fgaddon/1234/tree/trunk/Aircraft/X15/X15-set.xml. The expected link text is "$FG_AIRCRAFT/Aircraft/X15/X15-set.xml@1234".

{{repo link
| site   = sf
| type   = svn web
| repo   = fgaddon
| path   = Aircraft/X15/X15-set.xml
| commit = 1234
| pre    = $FG_AIRCRAFT
}}.

$FG_AIRCRAFT/Aircraft/X15/X15-set.xml@r1234.

svn import

This should give:

svn import DaSH/ svn+ssh://<username>@svn.code.sf.net/p/flightgear/fgaddon/trunk/Aircraft/ -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at http://forum.flightgear.org/viewtopic.php?f=4&t=24495 ."
{{#tag:syntaxhighlight|
{{repo link
  | cmd      = svn import DaSH/
  | repo     = fgaddon
  | protocol = svn+ssh
  | login    = <username>
  | type     = svn
  | path     = Aircraft/
  | post     = -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at http://forum.flightgear.org/viewtopic.php?f=4&t=24495 ."
  | full     = 1
}}
| lang = "sh"
}}
svn import DaSH/ svn+ssh://<username>@svn.code.sf.net/p/flightgear/fgaddon/trunk/Aircraft/ -m "Initial import of the DaSH human powered aircraft.\n\nFor details see the forum thread at http://forum.flightgear.org/viewtopic.php?f=4&t=24495 ."
FGAddon RSS feed

This is a link to https://sourceforge.net/p/flightgear/fgaddon/feed.

{{repo link
| site   = sf
| login  = dummy_user                  <!-- Dummy parameter, not to be used -->
| repo   = fgaddon
| type   = svn web
| view   = rss
| branch = branches/release-2016.1     <!-- Dummy parameter, not to be used -->
| path   = Aircraft/                   <!-- Dummy parameter, not to be used -->
| commit = 1234                        <!-- Dummy parameter, not to be used -->
| line   = 200                         <!-- Dummy parameter, not to be used -->
}}.

flightgear/fgaddon RSS feed.

User fork of the FlightGear repository

File with line number

This is for https://sourceforge.net/u/edauvergne/code-py-ogel/ci/python/tree/test.py#l23.

{{repo link
| site   = sf
| repo   = code-py-ogel
| branch = python
| path   = test.py
| line   = 23
| user   = edauvergne
}}.

edauvergne/code-py-ogel/python/test.py#l23.

Commit

This is for https://sourceforge.net/u/edauvergne/flightgear/ci/8474df/.

{{repo link
| site   = sf
| user   = edauvergne
| repo   = flightgear
| commit = 8474df
| view   = commit
}}.

edauvergne/flightgear/8474df commit view

GitHub examples

Base site URL

This is for the base URL https://github.com.

{{repo link|site=gh}}.

GitHub website.

{{repo link|site=gh|full=1}}.

https://github.com.

User repository

{{repo link
| site = gh
| user = hamzaalloush
| repo = fgradar-clone
}}.

github/hamzaalloush/fgradar-clone.

User repository prefixed with $FG_ROOT

{{repo link
| site  = gith
| user  = bhugh
| repo  = Bombable
| line  = 30
| path  = Aircraft/A-10-Bombable/A-10-Bombable-set.xml
| pre   = $FG_ROOT
}}.

$FG_ROOT/Aircraft/A-10-Bombable/A-10-Bombable-set.xml#L30.

The c172p-detailed repository

This is for the c172p-detailed repository https://github.com/Juanvvc/c172p-detailed/tree/master (this is the same as https://github.com/Juanvvc/c172p-detailed).

{{repo link
| site = gh
| user = Juanvvc
| repo = c172p-detailed
| text = A high detailed version of the C172P aircraft for FlightGear
}}

A high detailed version of the C172P aircraft for FlightGear.

Git clone

This is for cloning the c172p-detailed aircraft with git clone https://github.com/Juanvvc/c172p-detailed.git.

{{#tag:code | {{#tag:nowiki |
  {{repo link
  | site = gh
  | cmd  = git clone
  | user = Juanvvc
  | repo = c172p-detailed
  | type = git
  | full = 1
  }}
}} }}

git clone https://github.com/Juanvvc/c172p-detailed.git

File with line number

This is for https://github.com/Juanvvc/c172p-detailed/blob/release/2016.1/c172p-set.xml#L49.

{{repo link
| site   = gh
| user   = Juanvvc
| repo   = c172p-detailed
| view   = blob
| branch = release/2016.1
| path   = c172p-set.xml
| line   = 49
| text   = The c172p-detailed authors
}}.

The c172p-detailed authors.

Raw view

This is for https://github.com/Juanvvc/c172p-detailed/raw/master/c172p-set.xml, which will redirect itself to https://raw.githubusercontent.com/Juanvvc/c172p-detailed/master/c172p-set.xml.

{{repo link
| site = gh
| user = Juanvvc
| repo = c172p-detailed
| view = raw
| path = c172p-set.xml
| full = 1
}}.

https://github.com/Juanvvc/c172p-detailed/raw/master/c172p-set.xml.

Commit

This is for https://github.com/Juanvvc/c172p-detailed/commit/df6f10608116674643a3cc4bf18819eeee016d42.

{{repo link
| site   = gh
| user   = Juanvvc
| repo   = c172p-detailed
| view   = commit
| commit = df6f10608116674643a3cc4bf18819eeee016d42
}}.

github/Juanvvc/c172p-detailed/df6f10608116674643a3cc4bf18819eeee016d42 commit view.

Tree view at a given commit

This is for https://github.com/Juanvvc/c172p-detailed/tree/df6f10608116674643a3cc4bf18819eeee016d42.

{{repo link
| site   = gh
| user   = Juanvvc
| repo   = c172p-detailed
| view   = tree
| commit = df6f10608116674643a3cc4bf18819eeee016d42
}}.

github/Juanvvc/c172p-detailed/df6f10608116674643a3cc4bf18819eeee016d42.

Main views

History view

This is for https://github.com/Juanvvc/c172p-detailed/commits/master.

{{repo link
| site   = gh
| user   = Juanvvc
| repo   = c172p-detailed
| view   = commits
}}.

github/Juanvvc/c172p-detailed/master history view.

History view from a commit

This is for https://github.com/Juanvvc/c172p-detailed/commits/df6f10608116674643a3cc4bf18819eeee016d42.

{{repo link
| site   = gh
| user   = Juanvvc
| repo   = c172p-detailed
| view   = commits
| commit = df6f10608116674643a3cc4bf18819eeee016d42
}}.

github/Juanvvc/c172p-detailed/df6f10608116674643a3cc4bf18819eeee016d42 history view.

Zip archive download

Default

This is for https://github.com/Juanvvc/c172p-detailed/archive/master.zip.

{{repo link
| site = github
| proj = Juanvvc
| repo = c172p-detailed
| type = zip
| full = 1
}}.

https://github.com/Juanvvc/c172p-detailed/archive/master.zip.

Branch

This is for https://github.com/Juanvvc/c172p-detailed/archive/release/2016.1.zip.

{{repo link
| site   = github
| proj   = Juanvvc
| repo   = c172p-detailed
| branch = release/2016.1
| type   = zip
| full   = 1
}}.

https://github.com/Juanvvc/c172p-detailed/archive/release/2016.1.zip.

Commit

This is for https://github.com/Juanvvc/c172p-detailed/archive/c9cef81a899201802b32109c43ca686bbeffdb42.zip.

{{repo link
| site   = github
| proj   = Juanvvc
| repo   = c172p-detailed
| commit = c9cef81a899201802b32109c43ca686bbeffdb42
| type   = zip
| full   = 1
}}.

https://github.com/Juanvvc/c172p-detailed/archive/c9cef81a899201802b32109c43ca686bbeffdb42.zip.

GitHub issue tracker

All issues

This is for https://github.com/Juanvvc/c172p-detailed/issues.

{{repo link
| site = github
| proj = Juanvvc
| repo = c172p-detailed
| type = tracker
| full = 1
}}.

https://github.com/Juanvvc/c172p-detailed/issues.

Specific issue

This is for https://github.com/Juanvvc/c172p-detailed/issues/1.

{{repo link
| site   = github
| proj   = Juanvvc
| repo   = c172p-detailed
| type   = tracker
| number = 1
| full   = 1
}}.

https://github.com/Juanvvc/c172p-detailed/issues/1.

GitHub wiki

Main page

This is for https://github.com/c172p-team/c172p/wiki.

{{repo link
| site = github
| proj = c172p-team
| repo = c172p
| type = wiki
| full = 1
}}.

https://github.com/c172p-team/c172p/wiki.

Subpage

This is for https://github.com/c172p-team/c172p/wiki/Release-process-and-versioning.

{{repo link
| site = github
| proj = c172p-team
| repo = c172p
| type = wiki
| path = Release-process-and-versioning
| full = 1
}}.

https://github.com/c172p-team/c172p/wiki/Release-process-and-versioning.

GitLab examples

Base site URL

This is for the base URL https://gitlab.com.

{{repo link|site=gl}}.

GitLab website.

{{repo link|site=gl|full=1}}.

https://gitlab.com.

User repository

This is for https://gitlab.com/emilianh/Lockheed-L10-Electra.

{{repo link
| site   = gl
| user   = emilianh
| repo   = Lockheed-L10-Electra
}}

gitlab/emilianh/Lockheed-L10-Electra/master

Or:

{{repo link
| site   = gl
| user   = emilianh
| repo   = Lockheed-L10-Electra
| full   = 1
}}

https://gitlab.com/emilianh/Lockheed-L10-Electra

The FlightGear Multiplayer server software

This should produce git clone https://gitlab.com/fgms/fgms-0-x.git.

{{#tag:syntaxhighlight|
{{repo link
  | site = gitlab
  | cmd  = git clone
  | proj = fgms
  | repo = fgms-0-x
  | type = git
  | full = 1
}}
| lang = "sh"
}}
git clone https://gitlab.com/fgms/fgms-0-x.git

File

This is for https://gitlab.com/fg-radi/osm2city/blob/master/osm2city.py.

{{repo link
| site = gitlab
| proj = fg-radi
| repo = osm2city
| path = osm2city.py
| full = 1
}}.

https://gitlab.com/fg-radi/osm2city/blob/master/osm2city.py.

File and a branch

This is for https://gitlab.com/tortoisegit/tortoisegit/blob/REL_1.8.16.0_EXTERNAL/release.txt.

{{repo link
| site   = gitlab
| proj   = tortoisegit
| repo   = tortoisegit
| branch = REL_1.8.16.0_EXTERNAL
| path   = release.txt
| full   = 1
}}.

https://gitlab.com/tortoisegit/tortoisegit/blob/REL_1.8.16.0_EXTERNAL/release.txt.

File and a commit

This is for https://gitlab.com/extra500/extra500/blob/20ac59/extra500-set.xml.

{{repo link
| site   = gitlab
| proj   = extra500
| repo   = extra500
| commit = 20ac59ad
| path   = extra500-set.xml
| full   = 1
}}.

https://gitlab.com/extra500/extra500/blob/20ac59ad/extra500-set.xml.

File with line number

This is for https://gitlab.com/mdanil/Tu-144/blob/master/Models/Tu-144.xml#L8-14.

{{repo link
| site   = gitlab
| user   = mdanil
| repo   = Tu-144
| view   = blob
| branch = master
| path   = Models/Tu-144.xml
| line   = 8-14
| full   = 1
}}.

https://gitlab.com/mdanil/Tu-144/blob/master/Models/Tu-144.xml#L8-14.

Raw view

This is for https://gitlab.com/extra500/extra500/raw/20ac59/extra500-set.xml.

{{repo link
| site   = gitlab
| proj   = extra500
| repo   = extra500
| view   = raw
| commit = 20ac59
| path   = extra500-set.xml
| full   = 1
}}.

https://gitlab.com/extra500/extra500/raw/20ac59/extra500-set.xml.

Commit

This is for https://gitlab.com/extra500/extra500/commit/20ac59ad.

{{repo link
| site   = gitlab
| proj   = extra500
| repo   = extra500
| view   = commit
| commit = 20ac59ad
| full   = 1
}}.

https://gitlab.com/extra500/extra500/commit/20ac59ad.

Tree view at a given commit

This is for https://gitlab.com/extra500/extra500/tree/20ac59ad.

{{repo link
| site   = gitlab
| proj   = extra500
| repo   = extra500
| view   = tree
| commit = 20ac59ad
| full   = 1
}}.

https://gitlab.com/extra500/extra500/tree/20ac59ad.

Main views

History view

This is for https://gitlab.com/mailman/mailman/commits/master.

{{repo link
| site   = gl
| user   = mailman
| repo   = mailman
| view   = commits
| full   = 1
}}.

https://gitlab.com/mailman/mailman/commits/master.

History view from a commit

This is for https://gitlab.com/mailman/mailman/commits/1236a9cf.

{{repo link
| site   = gl
| user   = mailman
| repo   = mailman
| view   = commits
| commit = 1236a9cf
| full   = 1
}}.

https://gitlab.com/mailman/mailman/commits/1236a9cf.

Zip archive download

This is for https://gitlab.com/extra500/extra500/repository/archive.zip?ref=FG/2016.1.

{{repo link
| site   = gitlab
| proj   = extra500
| repo   = extra500
| branch = FG/2016.1
| type   = zip
| full   = 1
}}

https://gitlab.com/extra500/extra500/repository/archive.zip?ref=FG/2016.1

Zip archive download with tag

This is for https://gitlab.com/emilianh/IAR80/repository/archive.zip?ref=latest.

{{repo link
| site = gitlab
| proj = emilianh
| repo = IAR80
| tag  = latest
| type = zip
| full = 1
}}

https://gitlab.com/emilianh/IAR80/repository/archive.zip?ref=latest

Gitorious archive examples

Note  The Gitorious open source infrastructure is locked in a read-only archived state.

Base site URL

This is for the base URL https://gitorious.org.

{{repo link|site=go}}.

Gitorious website.

{{repo link|site=go|full=1}}.

https://gitorious.org.

The old FlightGear source repository

This is for the archived flightgear repository at https://gitorious.org/fg/flightgear.git. The automatically created URL, which is equivalent, should be https://gitorious.org/fg/flightgear?p=fg:flightgear.git;a=summary.

{{repo link
| site = gito
| proj = fg
| repo = flightgear
| text = The archived flightgear source code repository at Gitorious
}}.

The archived flightgear source code repository at Gitorious.

The historic fgdata repository

This is for the historic repository https://gitorious.org/fg/fgdata.git. The automatically created URL, which is equivalent, should be https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=summary.

{{repo link
| site = gito
| proj = fg
| repo = fgdata
| text = The archived fgdata repository at Gitorious, with full history from 2000-2015
}}.

The archived fgdata repository at Gitorious, with full history from 2000-2015.

File and branch in the historic fgdata repository

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Aircraft-uiuc/Cessna172/aircraft.dat;hb=refs/heads/release/3.2.0.

{{repo link
| site   = gito
| proj   = fg
| repo   = fgdata
| path   = Aircraft-uiuc/Cessna172/aircraft.dat
| branch = release/3.2.0
| full   = 1
}}

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Aircraft-uiuc/Cessna172/aircraft.dat;hb=refs/heads/release/3.2.0

File and tag in the historic fgdata repository

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Aircraft-uiuc/Cessna172/aircraft.dat;hb=refs/tags/version/3.4.0.

{{repo link
| site = gito
| proj = fg
| repo = fgdata
| path = Aircraft-uiuc/Cessna172/aircraft.dat
| tag  = version/3.4.0/~
| full = 1
}}

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Aircraft-uiuc/Cessna172/aircraft.dat;hb=refs/tags/version/3.4.0/~

Git clone

This is for cloning the historic fgdata repository with git clone https://gitorious.org/fg/fgdata.git.

{{#tag:code|{{#tag:nowiki|{{repo link
  | site     = gito
  | cmd      = git clone
  | proj     = fg
  | repo     = fgdata
  | type     = git
  | full     = 1
}}}}}}.

git clone https://gitorious.org/fg/fgdata.git.

File with line number

This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule#l1.

{{repo link
| site   = gito
| proj   = fg
| repo   = hoorays-fgdata
| view   = blob
| branch = topics/scriptable-ai-submodule
| path   = Nasal/ai/ai.nas
| line   = 1
| text   = Scripted AI Objects repo
}}.

Scripted AI Objects repo.

File prefixed with $NASAL_SRC

This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule.

{{repo link
| site       = gito
| proj       = fg
| repo       = hoorays-fgdata
| view       = blob
| branch     = topics/scriptable-ai-submodule
| path       = Nasal/ai/ai.nas
| pre        = $NASAL_SRC
| simplepath = 1
}}.

$NASAL_SRC/Nasal/ai/ai.nas.

Raw view

This is for https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob_plain;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule.

{{repo link
| site   = gito
| proj   = fg
| repo   = hoorays-fgdata
| view   = raw
| branch = topics/scriptable-ai-submodule
| path   = Nasal/ai/ai.nas
| full   = 1
}}.

https://gitorious.org/fg/hoorays-fgdata?p=fg:hoorays-fgdata.git;a=blob_plain;f=Nasal/ai/ai.nas;hb=refs/heads/topics/scriptable-ai-submodule.

Branch

This is for https://gitorious.org/fg/toms-fgdata?p=fg:toms-fgdata.git;a=shortlog;h=refs/heads/canvas-gui-demo.

{{repo link
| site   = go
| proj   = fg
| repo   = toms-fgdata
| branch = canvas-gui-demo
| full   = 1
}}.

https://gitorious.org/fg/toms-fgdata?p=fg:toms-fgdata.git;a=shortlog;h=refs/heads/canvas-gui-demo.

Commit

This is for https://gitorious.org/nasal-standalone/nasal-experiments?p=nasal-standalone:nasal-experiments.git;a=commit;h=9b2d59c316d03b83cfb4352a38b865aa29f4c280.

{{repo link
| site   = gito
| proj   = nasal-standalone
| repo   = nasal-experiments
| view   = commit
| commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
| pre    = $NASAL_SRC
}}.

$NASAL_SRC.

Commit with file path

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Nasal/canvas/map/TFC.lcontroller;hb=c78b2f936891bffad49e27d84d952a0d45540eef

{{repo link
| site   = gito
| proj   = fg
| repo   = fgdata
| path   = Nasal/canvas/map/TFC.lcontroller
| view   = blob
| commit = c78b2f936891bffad49e27d84d952a0d45540eef
| full   = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=blob;f=Nasal/canvas/map/TFC.lcontroller;hb=c78b2f936891bffad49e27d84d952a0d45540eef.

Commitdiff

This is for https://gitorious.org/nasal-standalone/nasal-experiments?p=nasal-standalone:nasal-experiments.git;a=commitdiff;h=9b2d59c316d03b83cfb4352a38b865aa29f4c280.

{{repo link
| site   = gito
| proj   = nasal-standalone
| repo   = nasal-experiments
| view   = commitdiff
| commit = 9b2d59c316d03b83cfb4352a38b865aa29f4c280
| pre    = $NASAL_SRC
}}.

$NASAL_SRC.

Main views

Summary view

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=summary.

{{repo link
| site = gito
| proj = fg
| repo = fgdata
| view = summary
| full = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=summary.

Shortlog view

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=shortlog.

{{repo link
| site = gito
| proj = fg
| repo = fgdata
| view = shortlog
| full = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=shortlog.

Log view

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=log;h=4c03a4968d2844c9c8ba734116da3478a1bebb38.

{{repo link
| site   = gito
| proj   = fg
| repo   = fgdata
| view   = log
| commit = 4c03a4968d2844c9c8ba734116da3478a1bebb38
| full   = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=log;h=4c03a4968d2844c9c8ba734116da3478a1bebb38.

Log with branch

This is for https://gitorious.org/fg/hoorays-flightgear?p=fg:hoorays-flightgear.git;a=log;h=refs/heads/topics/ada-support.

{{repo link
| site   = gito
| proj   = fg
| repo   = hoorays-flightgear
| view   = log
| branch = topics/ada-support
| full   = 1
}}.

https://gitorious.org/fg/hoorays-flightgear?p=fg:hoorays-flightgear.git;a=log;h=refs/heads/topics/ada-support.

Merge requests

Default view

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=commit;h=refs/merge-requests/190.

{{repo link
| site = go
| proj = fg
| repo = fgdata
| mr   = merge-requests/190
| full = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=commit;h=refs/merge-requests/190.

Commit view

This is for https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=commit;h=refs/merge-requests/190.

{{repo link
| site = go
| proj = fg
| repo = fgdata
| view = commit
| mr   = merge-requests/190
}}.

gitorious/fg/fgdata/merge-requests/190.

Or as a URL:

{{repo link
| site = go
| proj = fg
| repo = fgdata
| view = commit
| mr   = merge-requests/190
| full = 1
}}.

https://gitorious.org/fg/fgdata?p=fg:fgdata.git;a=commit;h=refs/merge-requests/190.

Generic repository handling

OpenSceneGraph svn repository

This should create svn co http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk osg.

{{#tag:code|{{#tag:nowiki|{{repo link
| site     = svn.openscenegraph.org
| cmd      = svn co
| protocol = http
| type     = svn
| proj     = osg
| repo     = OpenSceneGraph
| post     = osg
| full     = 1
}}}}}}.

svn co http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk osg.

OpenSceneGraph branch and file

This should create svn co http://svn.openscenegraph.org/osg/OpenSceneGraph/branches/OpenSceneGraph-3.4/src osg_src.

{{#tag:code|{{#tag:nowiki|{{repo link
| site     = svn.openscenegraph.org
| cmd      = svn co
| protocol = http
| type     = svn
| proj     = osg
| repo     = OpenSceneGraph
| branch   = branches/OpenSceneGraph-3.4
| path     = src
| post     = osg_src
| full     = 1
}}}}}}.

svn co http://svn.openscenegraph.org/osg/OpenSceneGraph/branches/OpenSceneGraph-3.4/src osg_src.

Related templates