PowerBuilder provides native interface options of SVN and Git for directly performing source control operations and functions in the PowerBuilder IDE. After you have configured the connection settings for SVN or Git in your PowerBuilder workspace/solution, you can directly perform the following source control functions by right-clicking the objects in the system tree. The menu item name varies depending on the source control system (SVN or Git) you selected for your current workspace/solution.
Supported SVN and Git version and protocol
The SVN feature has been fully tested against SVN server 1.7.1 and later.
The Git feature has been fully tested against GitHub, and also tested with GitLab, BitBucket, Bonobo, Perforce, and Team Foundation Server (TFS).
The SVN/Git client that has been fully tested to work is: SVN client 1.14.1 and later, and Git client 2.1 and later.
The protocol of SVN/Git that has been fully tested to work is: HTTP and HTTPS.
PowerBuilder supports TLS 1.1/1.2 for the Git server handshake.
Source control system |
Menus available in PowerBuilder IDE |
Used in operations |
---|---|---|
SVN |
Connect to Workspace/Solution |
Connects with the SVN source control server and the project, and downloads the project to the workspace/solution. See the section called “Get a workspace/solution from SVN” for details. |
Add to Source Control |
Connects with the SVN source control server and uploads the workspace/solution to the source control server. See the section called “Add a workspace/solution to SVN” for details. |
|
SVN Commit |
Adds an object to the SVN source control server if the object does not exist on the server, or commit the changes to the server if the object has already been added to the server, or delete the object from the server if the local copy has already been deleted. See the section called “Commit objects to SVN” for details. |
|
SVN Update |
Gets the object from the SVN source control server if the object does not exist on the local machine, or update the local copy if the object already exists on the local machine. See the section called “Get objects from SVN” for details. |
|
SVN Resolve |
Removes the conflicted state of the local copy and commit it again. You will have to manually resolve the conflicts before using this menu. See the section called “Resolve conflicts” for details. |
|
SVN Revert |
Undoes any changes to the local copy and restores to the version on the source control server. See the section called “Revert changes” for details. |
|
SVN Get/Release Lock |
Locks the object in the SVN source control server so that other users cannot commit changes to the object. See the section called “Lock objects” for details. |
|
SVN Diff |
Compare an object in your local directory with the version of the object that was last synchronized with the source control server. See the section called “Compare objects” for details. |
|
SVN Show Log |
Displays the revision logs that are input during commit. See the section called “Tools for Show Log\Edit Conflicts” for details. |
|
Refresh |
Reloads the object if it is changed outside of IDE or after the PBL is downloaded. See the section called “Refresh objects” for details. |
|
Upload PBL |
Upload PBL is only necessary in the scenarios described in the section called “Upload PBL”. |
|
Open Containing Folder |
Opens the folder that contains the object. |
|
Git |
Connect to Workspace/Solution |
Connects with the Git source control server and the project, and downloads the project to the workspace/solution. See the section called “Get a workspace/solution from Git” for details. |
Add to Source Control |
Connects with the Git source control server and uploads the workspace/solution to the source control server. See the section called “Add a workspace/solution to Git” for details. |
|
Git Commit |
Adds an object to the local repository if the object does not exist on the local repository, or commit the changes to the local repository if the object has already been added to the local repository, or delete the object from the local repository if the local copy has already been deleted. See the section called “Commit objects to Git” for details. |
|
Git Push |
Commits the objects from the local repository to the remote repository on the source control server. See the section called “Commit objects to Git” for details. |
|
Git Pull |
Gets the object from the Git source control server if the object does not exist on the local repository, or update the local copy if the object already exists on the local repository. See the section called “Get objects from Git” for details. |
|
Git Revert |
Undoes any changes to the local copy and restores to the version on the source control server. See the section called “Revert changes” for details. |
|
Git Resolve |
Removes the conflicted state of the local copy and commit it again. You will have to manually resolve the conflicts before using this menu. See the section called “Resolve conflicts” for details. |
|
Git Diff |
Compare an object in your local directory with the version of the object that was last synchronized with the source control server. See the section called “Compare objects” for details. |
|
Git Show Log |
Displays the revision logs that are input during commit. See the section called “Tools for Show Log\Edit Conflicts” for details. |
|
Refresh |
Reloads the object if it is changed outside of IDE or after the PBL is downloaded. See the section called “Refresh objects” for details. |
|
Git Create Branch |
Creates a branch after the workspace/solution is added to the source control server. See the section called “Use branches” for details. |
|
Git Switch Branch |
Switches to a branch. See the section called “Use branches” for details. |
|
Upload PBL |
Upload PBL is only necessary in the scenarios described in the section called “Upload PBL”. |
|
Open Containing Folder |
Opens the folder that contains the object. |