Package Explorer

Source Code Control in Code Packages

Developers can use a wide range of source code control systems with Combine to version their code and collaborate while developing database releases. With unwrapped packages, each SQL script in the package can be checked in and out independently of the root node, so that developers could work on different scripts at the same time. However, since the root node of the unwrapped package (that reflects the .cpa package file) contains the mappings (names, paths) of all folders and scripts in the package, the user that checks out the root node is the only person that can add, remove, rename, or change the properties of items in the code package. On the other hand, since wrapped packages consist of a single file, only one user can work on a wrapped package at a time.

In order to work with source code control in code packages, all you need to do is to make sure that your source control provider is set up:
Go to Tools → Options, and select your source code control plug-in under Plug-in Selection. Then, when working on a code package in the Package Explorer, you can right-click and select various source-control features and actions from the menu.

When working in source-controlled package, several things need to be considered:

1. File → Source Control → Change Source Control - this option prompts the source-control binding dialog that maps between a folder in your source-control server and the local file system.

2. Get Latest - will retrieve the latest version of all code package items that are available on the local file system. For example, if other users check out a package and add new scripts to it (without checking the root node back to source control), when working on unwrapped packages, you will not see the new package items until you check out the latest version of the package. However, you can still get the latest version of all files that are locally available on your file system. This is common practice in many editors and IDEs.

3. Combine source-control icons - when working in the editor, you can see the status of your script in the lower pane in the editor window. Available icons and statuses are:

   Item added to package and not yet available in source control
   Package item is checked out to me
   Package item is checked out to another user
   Package item is checked in
   Package item is missing from the source control server (after item is deleted from SCS)

The exclamation mark is added to any of the above icons when the package item is missing from the local file system, for example:

   Item added to package but then deleted from local file system
   Package item is checked in but is not found on my local file system

© 2001-2018 JNetDirect, Inc. All Rights Reserved.