Vridlo/types/Ref: Difference between revisions

From ALT Linux Wiki
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Ref''' is structure that represents git repo tag or commit reference, and it is described as:
'''Ref''' is a '''''primary''''' structure that represents git repo tag or commit reference for the specified [[Vridlo/types/Vcs|Vcs]], and it is described as:


* '''sha''' is ''string[40] '''mandatory write-once'''''
* '''sha''' is ''string[40] '''mandatory write-once'''''
  [https://en.wikipedia.org/wiki/SHA-1 SHA1] 40-byted checksum over the referenced object. Is used as unique object index.
  [https://en.wikipedia.org/wiki/SHA-1 SHA1] 40-byted checksum over the referenced object. Is used as unique object index.


* '''name''' is ''string '''mandatory write-once'''''
* '''name''' is ''string '''optional write-once'''''
  Name of the referenced object, in format of changelog,  
  Name of the referenced object, is the tags name when '''kind''' is ''tag'', blank otherwise.


* '''kind''' is ''datetime '''mandatory write-once'''''
* '''kind''' is ''string '''mandatory write-once'''''
  Type of the referenced object, can one of ''tag'', ''commit'',  
  Type of the referenced object, can one of ''tag'', ''commit''
 
* '''uri''' is ''string '''mandatory write-once'''''
URI of the repository, must begins with ''git'', or ''https''. This can be used as key to bind it to [[Vridlo/types/Vcs|Vcs]].


* '''author_email''' is ''string '''mandatory'''''
* '''author_email''' is ''string '''mandatory'''''
  Author's email of the commit or tag.
  Author's email of the commit or tag. The user with the email must exists in the system.


* '''authored_at''' is ''datetime '''mandatory'''''
* '''authored_at''' is ''datetime '''mandatory'''''
Line 19: Line 22:
  Flag shows wheither the referenced object is signed.
  Flag shows wheither the referenced object is signed.


* '''message''' is ''natural '''optional'''''
* '''message''' is ''string '''optional'''''
  Message text of the reference.
  Message text of the reference.
Combination of '''sha''', and '''uri''' must be unique for all of the refs.

Latest revision as of 15:18, 25 December 2019

Ref is a primary structure that represents git repo tag or commit reference for the specified Vcs, and it is described as:

  • sha is string[40] mandatory write-once
SHA1 40-byted checksum over the referenced object. Is used as unique object index.
  • name is string optional write-once
Name of the referenced object, is the tags name when kind is tag, blank otherwise.
  • kind is string mandatory write-once
Type of the referenced object, can one of tag, commit
  • uri is string mandatory write-once
URI of the repository, must begins with git, or https. This can be used as key to bind it to Vcs.
  • author_email is string mandatory
Author's email of the commit or tag. The user with the email must exists in the system.
  • authored_at is datetime mandatory
Date of the commit or tag, which was done by the author.
  • signed is boolean optional
Flag shows wheither the referenced object is signed.
  • message is string optional
Message text of the reference.

Combination of sha, and uri must be unique for all of the refs.