anchor.diff:           content TYPE string,
          END OF ty_web_asset.
   TYPES  tt_web_assets TYPE STANDARD TABLE OF ty_web_asset WITH DEFAULT KEY.
  +
  +TYPES: BEGIN OF ty_repo_file,
  +         path       TYPE string,
  +         filename   TYPE string,
  +         is_changed TYPE abap_bool,
  +       END OF ty_repo_file.
  +TYPES  tt_repo_files TYPE STANDARD TABLE OF ty_repo_file WITH DEFAULT KEY.
   
   CONSTANTS: BEGIN OF gc_type,
                commit TYPE ty_type VALUE 'commit',            "#EC NOTEXT
  
positive.code:       ELSE.
          LOOP AT is_item-files INTO ls_file.
            IF ls_file-is_changed = abap_true.
              lv_difflink = file_encode( iv_key = io_repo->get_key( ) is_file = ls_file ).
              ro_html->add( |<a href="sapevent:diff?{ lv_difflink }">diff</a>| ).
            ELSE.
              ro_html->add( |<span>&nbsp;</span>| ).
  
negative.code:       RAISING   lcx_exception.
  
    PRIVATE SECTION.
      METHODS get_page_by_name
        IMPORTING iv_name        TYPE clike
        RETURNING VALUE(ri_page) TYPE REF TO lif_gui_page
        RAISING   lcx_exception.
  
      METHODS abapgit_installation
        RAISING lcx_exception.
  