When you share your app in an organization, members of the organization can see your app in AppStudio for ArcGIS and download it. They can then make a copy of the app and treat it as their own, but they cannot edit your instance of the app. To collaborate with a colleague and edit the same app, you must first share your app with a group that allows collaboration.
Create an ArcGIS collaboration group
Only an administrator of an organization can create a collaboration group.
Only an organization administrator can enable this capability on a group and own groups with this capability. Only members of the same organization can belong to a collaboration group. The group must be new; the item update capability cannot be added to an existing group.
To create a collaboration group, complete the following steps:
- Sign in with your organizational administrator account.
- Choose Groups.
- Choose Create A Group.
- Provide a name, summary, description, and tags for the group, and attach a thumbnail.
- In the Status section, choose Members can update all items in this group.
- In the Contributors section, choose Members.
- Click Save.
A new group is created. You can now select this group and choose to invite users, or share the group. Any members of the group can add apps for collaboration and update apps that other members have added to the group from within AppStudio.
Add your app to an ArcGIS collaboration group
Members of collaboration groups can add apps to work on with their colleagues.
To add an app to a collaboration group, complete the following steps:
- Sign in to ArcGIS Online as a group member.
- Choose My Content.
- Check the box next to the app you want to collaborate on.
- From the Share menu, choose Access and update capabilities.
- From the list of collaboration groups, choose the group you want to share the item with, and click OK.
Your app is now shared with that collaboration group.
All members of the group can update the item regardless of the privileges for their role. However, they cannot perform other actions that are outside of their privileges. For example, if they do not have privileges to create content, they cannot save an item they update. When someone edits an app and updates it, the reported ownership of the item will change to that person. When you next edit and update the app, the reported owner will be you. Only the owner (or administrator) of the item can perform the following actions on the item: delete, share, move, change owner, change delete protection, publish, and register an app.
Collaborate on an app through version control systems
For access to more extensive collaboration tools such as change history, issue tracking, and associating issues with changes, you can configure your app to use a version control system. While this section focuses on using Git, other version control systems are available. This is supported by Qt Creator.
To prepare, create, and work on an app using GitHub, complete the following steps.
A GitHub account is required.
- Download Git tools.
These tools should already be present on macOS and some Linux devices but need to be downloaded for Windows.
- Open Qt Creator using the Edit button in the side panel of AppStudio Desktop.
- In Qt Creator, open the Tools menu and click Options. Click Version Control, and on the Git tab, provide the file path to location of the Git application, for example, C:\Program Files\Git\bin. Ensure that the Set HOME environment variable check box is checked to direct authorization to search for SSH keys in the same location that Git Bash uses.
- Create your AppStudio app as normal.
- In GitHub, create a new repository for the app. It's recommended, although not required, that the same name be used for both the app and the repository.
- Clone the repository to your desktop computer using your preferred program and method. You can optionally choose to clone the repository to your ~ArcGIS/Apps folder. Doing this means that you maintain only one copy of the app on your computer. Be sure that the app you run and test in AppStudio is the same app that you are managing with Git.
- Move (or copy) all of the files from your app's folder into the root folder of the repository.
- Create a file named .gitignore and add it to the root folder of the repository. This file contains a list of files that Git should ignore when performing change control. Files to include are .info.json, *.user, *.qmlc, and *.jsc.
You can now work on your app using the Git tools of your choice, while periodically committing changes to your repository. Use issues to track specifics and changes, and you can track the progress of your app's development. You can also use these tools in Qt Creator in the Tools > Git menu.
It is recommended to make a single check-in of the appinfo.json and iteminfo.json files to your repository after each time you update the ArcGIS Online item for your app. This keeps your repository up to date with the version number, number of views, and comments of the online item, and you can use the version numbering to track edits in the repository against versions of your app that have been shared with others.
For more information on how to use GitHub, see GitHub's guides and help.