Updated documentation for repo settings & icons (#3499)

* Completed to-dos 

- Updated abapgit.xml example
- Completed missing docu for local settings

* screenshots

* screenshots

* Delete repo_settings_local.png

* screenshots

* Delete repo_settings_local.png

* screenshots

* screenshots

* Combine write-protect setting

* Merged to repo settings

* screenshots

* screenshots

* merged to repo settings

* merged to repo settings

* Adding details

* Added links

* links

* icons

* icons

* icons

* icons

* icons

* icons

* icons

* Update ref-icons.md

* icons

* icons

* Update docs/ref-dot-abapgit.md

Co-authored-by: Lars Hvam <larshp@hotmail.com>

Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
Marc Bernard 2020-06-16 20:50:32 +02:00 committed by GitHub
parent d74284bd8b
commit cbf626fa3b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 92 additions and 46 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

View File

@ -1,12 +1,15 @@
---
title: .abapgit.xml
title: Repo Settings (.abapgit.xml)
category: reference
order: 10
---
**.abapgit.xml** is a special abapGit file. It contains meta information of the abapGit project.
.abapgit.xml can be edit via "Repo menu > Advanced > Repo settings" or via "abapGit menu > Advanced > Database util".
It is recommended to edit .abapgit.xml via "Repo menu > Advanced > Repo settings".
(In exceptional cases, you could edit the xml directly via "abapGit menu > Advanced > Database util".)
![](img/repo_settings_menu.png)
Example: abapGit's own .abapgit.xml
@ -25,13 +28,21 @@ Example: abapGit's own .abapgit.xml
<item>/README.md</item>
<item>/package.json</item>
<item>/changelog.txt</item>
<item>/.gitignore</item>
<item>/CODE_OF_CONDUCT.md</item>
<item>/abaplint.json</item>
<item>/.eslintrc.yaml</item>
</IGNORE>
</DATA>
</asx:values>
</asx:abap>
```
# Description
# Repository Settings
The following settings are stored in the repository and therefore valid for all users.
![](img/repo_settings_abapgit_xml.png)
## Location
The `.abapgit.xml` file must be located in the root folder of the git repository.
@ -46,7 +57,7 @@ The Git repository folder that defines the root folder where deserialization sta
## Folder Logic
abapGit follows two folder logics: PREFIX and FULL
abapGit follows two folder logics: PREFIX and FULL.
### PREFIX
@ -57,55 +68,72 @@ Valid prefix:
* **ZFOO**_BAR
* **ZFOO_BAR**_QUX
will give folder structure /bar/qux/
will produce folder structure /bar/qux/
Invalid prefix:
* ZFOO
* ZBAR
The folder logic PREFIX allows to install the repository into a different parent package. This can even be local packages(`$*`), in that case no transport order is required.
The folder logic PREFIX allows to install a repository into a different parent package (in different systems). This can even be local packages (`$*`), in which case no transport order is required.
### FULL
Any package name is accepted
Any package name is accepted.
* ZSOMETHING
* ZHELLO
will give folder structure /zsomething/zhello/
will produce folder structure /zsomething/zhello/
The folder logic FULL forces the installation of the repository into packages with exactly the same name. This can be problematic for contributors who use a system where specific prefixes for the package names are to be used.
The folder logic FULL forces the installation of a repository into packages with exactly the same name. Note that this can be problematic for contributors who use a system where specific prefixes for the package names are to be used.
## Ignore
## Ignore files
Files which abapGit will not download into your ABAP system.
Files which abapGit will not download to your ABAP system. Typically, this includes references to readme, changelog, and license
files as well as repository configuration related to workflows like build or linting jobs.
## Requirements
ToDo
In this section, you can specify the minimum requirements that should be fulfilled to allow installation of the repository. Listed software components should exist in the target system and be at the given release or higher. If the target system matches the minimum release, then it must also be at the given patch level or higher.
## Local Settings
# Local Settings
### Write protected
The following settings are stored in and valid for the current system only.
Write protected is described here: [Write protected](http://docs.abapgit.org/ref-write-protect.html)
![](img/repo_settings_locals.png)
### Ignore subpackages
## Display name
Subpackages would be ignored through this option.
This setting overwrites the default name of the repository (which is derived from the later part of the repository URL).
### Only local objects
## Write protected
ToDo
If you write protect a repository, it will make sure that users cannot overwrite objects in the SAP system with objects from the repository. It helps enforcing that data can only go from the SAP system to the repository.
### Code inspector
Turning on this option disables pulls, uninstall of all objects, switching branches, etc.
The repository objects can be checked with the Code inspector or the ABAP Test Cockpit (ATC) before staging. It's possible to perform a code inspector or ABAP Test Cockpit check without maintaing a check variant. In this case the end user is prompted with a F4 search help to choose a check variant during runtime.
Caution: The option influences only processes within abapGit. It does **not** protect against changes to objects using other means like ABAP Workbench or ABAP Development Tools.
#### Code inspector check variant
## Ignore subpackages
By entering a Code inspector or ABAP Test Cockpit (ATC) check variant, the check is activated. Only global check variants are supported. Thus the check variant has to be available to all developers. A check variant can either make use of local checks of the developer system or a reference to a check variant on a remote ABAP Test Cockpit system. The available checks in a check variant on a remote ATC system may differ from the available checks of a check variant of the developer system due to the ATC system being on a newer release. For more details about release-specific availability of ABAP Test Cockpit security-related checks delivered by SAP Code Vulnerability Analyzer (CVA) see SAP Note `1921820`.
This setting impacts how abapGit determines which objects belong to a repository. The default is to select all objects assigned to the root SAP package including any other subpackages (and subpackages of subpackages). If "ignore subpackages" is turned on, then only objects of the root package are selected.
#### Block commit commit/push if code inspection has erros
## Only local objects
This option can be used to prevent staging if errors of priority 1 and 2 were found during the Code Inspector or ABAP Test Cockpit (ATC) check. Findings of priority &ge; 3 are not reported. A check variant must be configured to activate this option. abapGit won't change its behavior based on the transport settings of the `Transport Tool Integration` of the ATC setup in transaction `ATC`. If this option is not active and errors were found, the end user can stage anyway. It's not possible to view or request exemptions from within abapGit during the staging process. Furthermore it's not able to access the ATC check documentation for a finding from within abapGit.
This setting impacts how abapGit determines which objects belong to a repository. If "only local objects" is turned on, then the selection is limited to objects assigned to the current system (tadir-srcsystem = sy-sysid).
## Code inspector
The repository objects can be checked with the [Code inspector](https://help.sap.com/viewer/ba879a6e2ea04d9bb94c7ccd7cdac446/7.5.18/en-US/49205531d0fc14cfe10000000a42189b.html) or [ABAP Test Cockpit (ATC)](https://help.sap.com/viewer/ba879a6e2ea04d9bb94c7ccd7cdac446/7.5.18/en-US/62c41ad841554516bb06fb3620540e47.html) before staging. It's possible to perform a code inspector or ABAP Test Cockpit check without maintaing a check variant. In this case the end user is prompted with a F4 search help to choose a check variant during runtime.
### Code inspector check variant
By entering a Code inspector or the ABAP Test Cockpit check variant, the check is activated. Only global check variants are supported. Thus the check variant has to be available to all developers. A check variant can either make use of local checks of the developer system or a reference to a check variant on a remote ABAP Test Cockpit system. The available checks in a check variant on a remote ATC system may differ from the available checks of a check variant of the developer system due to the ATC system being on a newer release. For more details about release-specific availability of ABAP Test Cockpit security-related checks delivered by SAP Code Vulnerability Analyzer (CVA) see SAP Note [1921820](https://launchpad.support.sap.com/#/notes/1921820).
### Block commit/push if code inspection has erros
This option can be used to prevent staging if errors of priority 1 and 2 were found during the Code Inspector or ABAP Test Cockpit check. Findings of priority &ge; 3 are not reported. A check variant must be configured to activate this option. abapGit won't change its behavior based on the transport settings of the `Transport Tool Integration` of the ATC setup in transaction `ATC`. If this option is not active and errors were found, the end user can stage anyway. It's not possible to view or request exemptions from within abapGit during the staging process. Furthermore it's not able to access the ATC check documentation for a finding from within abapGit.
## Serialize master language only
By default, abapGit will serialize objects in all installed languages. If this option is turned on, then this process is limited to the master language defined in the repository settings (see above).

39
docs/ref-icons.md Normal file
View File

@ -0,0 +1,39 @@
---
title: Icon Legend
category: reference
order: 25
---
The following list provides a quick reference to icons used in abapGit.
See also [abapGit Icon Font](https://github.com/abapGit/icon-font).
Icon | Description | Code
:----- | :------------ | :------------
<img src="https://github.com/abapGit/icon-font/blob/master/svg/chevron-down.svg" width="30" height="30"> | Arrow Down | (chevron-down)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/chevron-left.svg" width="30" height="30"> | Arrow Left | (chevron-left)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/chevron-right.svg" width="30" height="30"> | Arrow Right | (chevron-right)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/chevron-up.svg" width="30" height="30"> | Arrow Up | (chevron-up)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/star.svg" width="30" height="30"> | Favorite | (star)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/file-image.svg" width="30" height="30"> | File - Binary | (file-image)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/file-code.svg" width="30" height="30"> | File - Code | (file-code)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/file.svg" width="30" height="30"> | File - General | (file)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/file-alt.svg" width="30" height="30"> | File - Object | (file-alt)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/folder.svg" width="30" height="30"> | Folder | (folder)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/exclamation-circle.svg" width="30" height="30"> | Message - Error | (exclamation-circle)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/exclamation-triangle.svg" width="30" height="30"> | Message - Warning | (exclamation-triangle)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/arrow-circle-up.svg" width="30" height="30"> | News/Changelog | (arrow-circle-up)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/bolt.svg" width="30" height="30"> | Object - Inactive | (bolt)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/lock.svg" width="30" height="30"> | Object - Locked | (lock)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/check.svg" width="30" height="30"> | OK | (check)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/code-branch.svg" width="30" height="30"> | Repository - Branch | (code-branch)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/code-commit.svg" width="30" height="30"> | Repository - Merge | (code-commit)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/plug.svg" width="30" height="30"> | Repository - Offline | (plug)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/cloud-upload-alt.svg" width="30" height="30"> | Repository - Online | (cloud-upload-alt)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/bars.svg" width="30" height="30"> | Repository Picker | (bars)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/box.svg" width="30" height="30"> | SAP Package | (box)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/briefcase.svg" width="30" height="30"> | SAP Transport | (briefcase)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/cog.svg" width="30" height="30"> | Settings | (cog)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/fire-alt.svg" width="30" height="30"> | (currently not used) | (fire-alt)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/sliders-h.svg" width="30" height="30"> | (currently not used) | (sliders-h)
<img src="https://github.com/abapGit/icon-font/blob/master/svg/snowflake.svg" width="30" height="30"> | (currently not used) | (snowflake)

View File

@ -1,21 +0,0 @@
---
title: Write protect
category: reference
order: 30
---
The write protected repository feature will make sure users cannot overwrite objects in the SAP system with objects from the git repository. So it helps enforcing that data can only go from the SAP system to the Git repository.
The feature disables pulls, uninstall of all objects, switching branches etc.
To enable:
In the repo, click "Repo settings"
![](img/repo_settings_click.png)
Tick "Write protect"
![](img/repo_settings_write.png)
Click "Save"