diff --git a/docs/guide-offline-install.md b/docs/guide-offline-install.md index b9c7f9317..590125e7d 100644 --- a/docs/guide-offline-install.md +++ b/docs/guide-offline-install.md @@ -12,7 +12,7 @@ order: 05 ![](img/offline1.png) -* Enter the name for your project, eg "Datamatrix" along with a package name, eg. $DATAMATRIX. If the package does not exist yet, you can select "Create Package" to create it. +* Enter the name for your project, eg "Datamatrix" along with a package name, eg. $DATAMATRIX. If the package does not exist yet, it will be created automatically when pulling. Alternatively, you can select "Create Package" to create the package manually with your own settings. ![](img/offline2.png) diff --git a/docs/guide-online-install.md b/docs/guide-online-install.md index c65b1e6e4..d5f4e4a02 100644 --- a/docs/guide-online-install.md +++ b/docs/guide-online-install.md @@ -12,7 +12,7 @@ order: 10 ![](img/clone1.png) -* Enter the url for the Github project, eg https://github.com/larshp/Datamatrix.git along with a package name, eg. $DATAMATRIX. If the package does not exist yet, you can select "Create Package" to create it. +* Enter the url for the Github project, eg https://github.com/larshp/Datamatrix along with a package name, eg. $DATAMATRIX. If the package does not exist yet, it will be created automatically when pulling. Alternatively, you can select "Create Package" to create the package manually with your own settings. ![](img/clone2.png) diff --git a/docs/img/installed.png b/docs/img/installed.png index 9cd222bd3..4a07e8835 100644 Binary files a/docs/img/installed.png and b/docs/img/installed.png differ diff --git a/docs/img/namespace_example.png b/docs/img/namespace_example.png new file mode 100644 index 000000000..56e85fd82 Binary files /dev/null and b/docs/img/namespace_example.png differ diff --git a/docs/ref-namespaces.md b/docs/ref-namespaces.md index d46769f24..f7660c91d 100644 --- a/docs/ref-namespaces.md +++ b/docs/ref-namespaces.md @@ -4,19 +4,19 @@ category: reference order: 70 --- -Objects with namespaces are serialized, `/FOOBAR/REPORT` to `#foobar#report.prog.abap` +abapGit supports namespaces. Objects with namespaces can be serialized and deserialized, for example `/FOOBAR/REPORT` to `#foobar#report.prog.abap`. The namespace itself is serialized as well, for example `/FOOBAR` to `#foobar#.nspc.xml`. This XML-file contains the repair license key for the namespace (but *not* the developer license key). -Using abapGit to install to customer systems: +Currently, abapGit will automatically serialize namespaces and update existing namespaces when pulling from the repo. abapGit is not yet able to create the namespace automatically, if it does not exist in the local system. You have to create the namespace manually, first. -A: Create namespace in SE03, namespace role = C, and add the repair license +Example: -B: Open namespace for modifications in SE03 +![](img/namespace_example.png) -C: Create namespaced package - -D: Change package original system to current in SE03 -> Change Object Directory Entries - -E: Clone/pull like normal +You can create the namespace as follows: +1. Create namespace in transaction SE03, namespace role = C, and add the repair license +1. Open namespace for modifications in SE03 +1. Create namespaced package (optional) +1. Clone/pull like normal Objects will appear as repaired in the customer system, compare with git source to determine if the objects are modified. diff --git a/docs/ref-packages.md b/docs/ref-packages.md new file mode 100644 index 000000000..029f6dca9 --- /dev/null +++ b/docs/ref-packages.md @@ -0,0 +1,42 @@ +--- +title: Packages & Transports +category: reference +order: 75 +--- + +## Packages + +abapGit repositories do *not* store any SAP package names. The top (or root) SAP package for a repository is defined when creating a repository in your system +("[New Online](guide-online-install.html)" or "[New Offline](guide-offline-install.html)"). You have two options to provide the SAP package: + +1. Let abapGit create the package automatically +2. Create the package manually + +If the repository contains sub packages, abapGit will create them automatically with the same settings as the top SAP package (see also [Folder Logic](ref-dot-abapgit.html#folder-logic)). + +### Automatic Creation of Package + +Just enter the name of the SAP package in the "New Online" or "New Offline" dialogs. The package does not have to exist. Then select "Clone Online Repo" or "Create Offline Repo". + +### Manually Creation of Package + +You can use an existing SAP package, create the package beforehand in transaction SE80, or create the package in the "New Online" or "New Offline" dialogs. + +## Transports + +Based on the type of SAP package you use, abapGit will determine what type of transport will be required. When pulling or uninstalling the repo, abapGit will then prompt +for a corresponding transport request. + +The following table lays out if abapGit can automatically create the package and how it determines the type of transport. + +Change & Transport System
Configuration | Local $-Package
$PACK | Local Z-Package
ZPACK | Transportable Z-Package
ZPACK | Namespace-Package
/NAMESPC/PACK +--------------------------|-----------------|-----------------|-------------------------|------------------- +Not configured | (1) | (2) | n/a | n/a +One transport layer | (1) | (3) | (4) | (4) +Multiple transport layers | (1) | (3) | (5) | (5) + +(1) Automatically create package, no transport
+(2) Automatically create package, local workbench request
+(3) Manually create package (without transport layer), local workbench request
+(4) Automatically create package, transportable workbench request
+(5) Automatically create package for default transport layer, transportable workbench request. Manually create package, if you want to use a different layer than the default.