Update docs for repo install and settings (#4455)

* Update ref-dot-abapgit.md

* Add files via upload

* Update ref-dot-abapgit.md

* Add stats doc

* Update ref-settings-stats.md

* Add files via upload

* Delete repo_settings_stats.png

* Add files via upload

* Delete guide-proxy-configuration.md

Covered in "Global settings"

* Delete guide-development-version.md

Covered under "Installation"

* Update guide-install.md

* Add files via upload

Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
Marc Bernard 2021-01-26 13:25:45 -05:00 committed by GitHub
parent 02bddf49fb
commit 8b367b8068
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 78 additions and 71 deletions

View File

@ -1,8 +0,0 @@
---
title: Development version
category: setup
order: 30
---
Install the abapGit development version using abapGit, either via online or offline projects.
Recommend keeping the compiled report in a different package, so it can be used as fallback in case of syntax errors.

View File

@ -13,9 +13,9 @@ abapGit exists in 2 flavours: _standalone_ version or _developer_ version.
## Prerequisites ##
abapGit requires SAP BASIS version 702 or higher.
## Install standalone version ##
1. Download the [ABAP code](https://raw.githubusercontent.com/abapGit/build/master/zabapgit.abap)(right click -> save-as) to a file.
2. Via `SE38` or `SE80`, create a new report named `ZABAPGIT_STANDALONE` (formerly `ZABAPGIT_FULL`). NB: Don't use the name `ZABAPGIT` if you plan to install the developer version.
## Install Standalone Version ##
1. Download the [ABAP code](https://raw.githubusercontent.com/abapGit/build/master/zabapgit.abap) (right click -> save-as) to a file.
2. Via `SE38` or `SE80`, create a new report named `ZABAPGIT_STANDALONE` (formerly `ZABAPGIT_FULL`). Note: Do *not* use the name `ZABAPGIT` if you plan to install the developer version.
3. In source code change mode, upload the code from the file using Utilities -> More Utilities -> Upload/Download -> Upload
4. Activate
@ -23,21 +23,35 @@ Typically, abapGit will only be used in the development system, so it can be ins
Now you can use abapGit by executing the report in transaction `SE38`.
## Setup SSL ##
To use the online feature, [SSL must be setup](guide-ssl-setup.html). Offline projects will work behind firewalls and without SSL.
## Install Developer Version ##
## Install developer version ##
1. Download latest version
1. Go to https://github.com/abapGit/abapGit/
2. Select **Code** > **Download ZIP**
3. Save file
2. Connect to SAP in language **EN**
3. In transaction `SE38`, run program `ZABAPGIT_STANDALONE`
4. Select **+ Offline**
5. Select existing package or create new package (eg: a local `$` package)
5. Select **Import <sup>zip</sup>**
6. Select *abapGit-master.zip* file
7. Select **Pull <sup>zip</sup>**
8. Activate
In order to contribute to the abapGit project, you install the developer version. First, logon to your SAP system in English (language **EN**) and install the standalone version (see above).
Transaction `ZABAPGIT` is now available
### Online (Recommended)
Prerequisite to using the online feature is that [SSL must be setup](guide-ssl-setup.html). If your system is not connected to the Internet (e.g. behind a firewall) or doesn't allow proper SSL configuration, then you can use the offline scenario (see below).
1. Run the standalone version of abapGit
1. On the repository overview page, select "New Online"
1. Enter `https://github.com/abapGit/abapGit/` for the URL
1. Enter package name `$ABAPGIT` (or select an existing or create new package)
1. Select "Clone Online Repo"
1. Select "Pull"
Transaction `ZABAPGIT` is now available to run the developer version.
### Offline
Download latest version of the abapGit developer version from https://github.com/abapGit/abapGit/. Select **Code** > **Download ZIP** and save the file locally.
![](img/zip_download.png)
1. Run the standalone version of abapGit
1. On the repository overview page, select "New Offline"
1. Enter repo name `abapGit` and package name `$ABAPGIT` (or select an existing or create new package)
1. Select "Create Offline Repo"
1. Select "Import <sup>zip</sup>"
1. Select the *abapGit-master.zip* file
1. Select "Pull <sup>zip</sup>"
Transaction `ZABAPGIT` is now available to run the developer version.

View File

@ -1,17 +0,0 @@
---
title: Proxy configuration
category: setup
order: 20
---
Online projects only
If your server is behind a proxy, it can be configured under Advanced -> Settings,
![](img/proxy.png)
**Hint:** the URL must **not contain https://** -> just enter name or IP
When the proxy should not be used for all repositories, exceptions can be maintained.
![](img/proxy_bypass.png)
**Hint:** the whole repository URL is checked against these bypass entries

BIN
docs/img/repo_settings.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
docs/img/utilities.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 587 B

BIN
docs/img/zip_download.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -4,14 +4,14 @@ category: reference
order: 10
---
**.abapgit.xml** is a special abapGit file. It contains meta information of the abapGit project.
`**.abapgit.xml**` is a special abapGit file. It contains meta information of the abapGit project. The file must be located in the root folder of the git repository.
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".)
It is recommended to edit .abapgit.xml using "Repository Settings" ![](img/repo_settings.png) in abapGit.
(In exceptional cases, you could edit the XML directly via "Utilities > Database Util" ![](img/utilities.png).)
![](img/repo_settings_menu.png)
Example: abapGit's own .abapgit.xml
Example: abapGit's own `.abapgit.xml`
```xml
<?xml version="1.0" encoding="utf-8"?>
@ -38,28 +38,36 @@ Example: abapGit's own .abapgit.xml
</asx:abap>
```
# Repository Settings
## 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.
### Main Language
## Master Language
The main language is the languages in which all texts belonging to repository objects will be created. It follows the SAP `sy-langu` values. Note that this implies that all objects in a repository must have the same main language.
The language in which all documentation and dictionary elements texts will be created. Follows SAP `sy-langu` values. Note that this implies that all objects in a repository will/should have the same master language.
### Translation Languages
## Starting Folder
There are currently two options available for including translations in a repository:
1. Object-specific logic provided by the object serializer class
1. Generic logic provided by abapGit framework (experimental, #4415)
If no translation languages are maintained in this setting, the first approach is used. If you maintain a list of translation languages (comma-separated, 2-letter ISO language codes), then these languages will be included in the serialization. If you maintain `*` for this setting, then all installed system languages will be used.
Note: You can suppress translations with the local "Only Serialize Main Language" setting (see below).
### Starting Folder
The Git repository folder that defines the root folder where deserialization starts.
## Folder Logic
### Folder Logic
abapGit follows two folder logics: PREFIX and FULL.
abapGit follows two folder logics: "Prefix" and "Full".
### PREFIX
#### Prefix
A package name must contain its parent package name as a prefix. Examples:
@ -76,7 +84,7 @@ Invalid prefix:
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
#### Full
Any package name is accepted.
@ -87,28 +95,28 @@ will produce folder structure /zsomething/zhello/
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 files
### Ignore Files
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.
Assuming that default starting folder /src/ is used, any files in root / or any other folder than the starting folder are ignored automatically. Therefore it will not be necessary to list files of the root folder into the ignore list (and as a consequence, the default ignore list is empty).
## Requirements
### Requirements
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
The following settings are stored in and valid for the current system only.
![](img/repo_settings_locals.png)
## Display name
### Display Name
This setting overwrites the default name of the repository (which is derived from the later part of the repository URL).
## Write protected
### Write Protected
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.
@ -116,26 +124,27 @@ Turning on this option disables pulls, uninstall of all objects, switching branc
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.
## Ignore subpackages
### Ignore Sub-Packages
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.
## Only local objects
### Only Local Objects
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
### Serialize Main Language Only
By default, abapGit will serialize objects in all installed languages (or maintained translation languages). If this option is turned on, then this process is limited to the main language defined in the repository settings (see above).
### 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
#### 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
#### Block Commit if Code Inspection has Errors
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).

View File

@ -0,0 +1,9 @@
---
title: Repo Statistics
category: reference
order: 15
---
You can find some statistics about a repository in the repository settings:
![](img/repo_settings_stats.png)