PlasticSCM - Download and installation

Download Plastic from this link, previous registration, then write an email to Codicesoftware to get the Free Community License for 15. (This email requirement is new starting from 2014/11/01)
Because the license has 1 year expiration from the moment you download it, you better use a real email (not a temp one) because every year you will need it again to renew the free license downloading the new one.


Download PlasticSCM Diff and Merge Tools for Visual FoxPro 9, that are a group of special scripts and programs to automate some actions with FoxBin2Prg (which is included too, only de EXE, but without the source code, that you can get here)

For downloading the project from GitHub with all the scripts, click the button on the right with the label Download ZIP.


Start the installation with the language selection:

PlasticSCM_en_Installation_01_lang_select.png


In component selection check only what you are going to use:

PlasticSCM_en_Installation_02_component_selection.png


On install options just mark this 2:

PlasticSCM_en_Installation_03_install_options.png


If using alone or without Active Directory (as I do) then select user/password user security:

PlasticSCM_en_Installation_04_server_security_config.png


Configure the server:

PlasticSCM_en_Installation_05_server_config.png


Make sure you understand this message, you can later migrate to a bigger database if you want:

PlasticSCM_en_Installation_06_server_sqlce_warn.png


Configure the client (don’t use “localhost”, you better use the server name because later you don’t want to see duplicated repositories as localhost and server name, which are the same):

PlasticSCM_en_Installation_07_client_config.png


Select the same user authentication used for the server:

PlasticSCM_en_Installation_08_client_security_config.png


If using this authentication, surely a user manager appears so you can add the first user (you:) and then you will be asked to use a default user, selecting your user again.

At this point the installation is ended. Now you copy your plasticd.lic license file to the “server” directory under Plastic installation directory and then start the Plastic service:

PlasticSCM_en_Installation_09_start_Plastic_Service.png


VERY IMPORTANT!

Please, read this link carefully, specially the last Note and do not forget to set a owner of the Plastic server using the cm command line tool, because if you reach or overcome the 15 users license, then Plastic will block because the mentioned license limit, and the only way to unblock it is using the admin user configured as owner of the Plastic server (don’t need to be a real server admin, just a user you designate as Plastic admin), so with this user you can deactivate unused user licenses and the rest of devs can continue working. (Happened to me and resolved it, so that’s why this warn and the solution. Keep at hand.)
For your information, a user license is activated on first checkin, but you can deactivate a user license when you like.


Creating the first repo (repository)

On first Plastic launch you will see a screen like this one (but in the selected language):

PlasticSMC__Instalacion__16.png


on which you select the left “new” button to create the first workspace and repo:

PlasticSCM_en_Installation_10_workspace_and_repository_creation.png


That’s it! You have your first repo ready for use! But don’t run yet, some default configuration is needed.


Configuration

On left panel you see this options:

PlasticSCM_en_Configuration_01_Main_Actions.png


Items view is where you see all the files of the workspace, as you see them in Windows File Explorer.

Pending Changes view is the view you are going to use when checking in the modified files, and the view on which you will visually check the differences before the checkin.

Branches view show the branch names and dependencies, in an “concatenated dependency” list, as “main” or “main/brancha” or “main/brancha/dev-1”

Branch Explorer is the most used view where you can visually see the branches and the history of your project.

Changesets view show a list of changesets and related info as owner, timestamp, repository name, branch name, and more.

  • A workspace is just an alias for your work directory (the root app directory), so Plastic can show a tab on the GUI with this alias and bind to a repository. It’s not just for the GUI, it’s used for all internal operations too, even from command line with the “cm” command.
  • A repository (or repo) is a database where your project is saved. You will use one project per repository, referenced by an alias called workspace, with the name you have chosen.
  • A changeset is a bunch of changes committed at once, that can be any combination of one or more new files or directories, one or more modified files and one or more deleted files or directories. All the changes you made on the workspace to elements under source control, conform the changeset, and it is checked in as a unit (all or nothing), on what is called “atomic commit”


On Pending Changes vew configure this options:

PlasticSCM_en_Configuration_02_PendingChanges.png


On left panel configure “Preferences” / “Other Options” as this:

PlasticSCM_en_Configuration_04_OtherOptions.png


On same Preferences panel, configure Comments as this:

PlasticSCM_en_Configuration_05_Comments.png


On same Preferences panel, select "Diff Tools" and "add" this (copy/paste including the quotes):

External diff tool:
"C:\DESA\plastic\foxpro_plasticscm_dm.exe" "'DIFF' '@sourcefile' '@destinationfile' '@sourcesymbolic' '@destinationsymbolic'"

Use with files that match the following pattern:
.pjx;.vcx;.scx;.frx;.lbx;.mnx;.dbf;.dbc

(then use the up arrow button to make this the top option in the list, as this picture shows)

PlasticSCM_en_Configuration_06_DiffTools.png


On same Preferences panel, select "Merge Tools" and "add" this (copy/paste including the quotes):

External merge tool:
"C:\DESA\plastic\foxpro_plasticscm_dm.exe" "'PRESERVE_WS' '@sourcefile'"

Use with files that match the following pattern:
.pjx;.pjt;.vcx;.vct;.scx;.sct;.frx;.frt;.lbx;.lbt;.mnx;.mnt;.dbf;.fpt;.cdx;.dbc;.dcx;.dct 

(then use the up arrow button to make this the top option in the list, as this picture shows)

PlasticSCM_en_Configuration_07_MergeTools.png


On same Preferences panel, configure “Custom Open With” as this:

- Click "Add..." and complete the fields:

Display Name:
 (VFP) All Files: Regenerate Binary

Full path to the executable:
<Path-To-FoxBin2Prg>\PlasticSCM_VFP9_All_Files_Regenerate_Binary.vbs

- Click OK


- Click "Add..." and complete the fields:

Display Name:
 (VFP) All Files: Regenerate Text versions

Full path to the executable:
<Path-To-FoxBin2Prg>\PlasticSCM_VFP9_All_Files_Regenerate_Text.vbs

- Click OK


- Click "Add..." and complete the fields:

Display Name:
 FoxBin2Prg

Full path to the executable:
<Path-To-FoxBin2Prg>\foxbin2prg.exe

- Click OK


- Click "Add..." and complete the fields:

Display Name:
 Normalize File Capitalization

Full path to the executable:
<Path-To-FoxBin2Prg>\Normalize_FileNames.vbs

- Click OK


- Click "Add..." and complete the fields:

Display Name:
(VFP) Pending Changes: Regenerate Binaries

Full path to the executable:
 <Path-To-FoxBin2Prg>\PlasticSCM_VFP9_Pending_Changes_Regenerate_Binary.vbs

- Click OK


- Click "Add..." and complete the fields:

Display Name:
 (VFP) Pending Changes: Regenerate Text versions

Full path to the executable:
<Path-To-FoxBin2Prg>\PlasticSCM_VFP9_Pending_Changes_Regenerate_Text.vbs

- Click OK


You can add Notepad++ too, it's useful to see text files directly from Plastic GUI

It's a good idea to create shortcuts of this programs too: "Normalize_FileNames.vbs", "Convert_VFP9_BIN_2_PRG.vbs", "Convert_VFP9_PRG_2_BIN.vbs" and "FoxBin2Prg.exe" and copy these accesses into "SendTo" folder of your Windows profile, so you can use this options from contextual Windows File Manager menu, right-clicking over a selected file or directory and choosing the required option

PlasticSCM_en_Configuration_08_CustomOpenWith.png


About FoxBin2Prg messages localization:

If you want FoxBin2Prg messages on your language (it defaults to Spanish), then you should download the full FoxBin2Prg project from VFPx, rename one of the language files available and recompile your own EXE, to replace the EXE available within Plastic tools, that defaults to Spanish too.


A word about Capitalization:

Plastic is a multiplatform tool, so it can be installed on Windows, Mac and Linux (using MONO framework), and been multiplatform, there are two things to take into account that can be different on those platforms: the end of line characters (CR+LF in Windows, LF in Unix) and capitalization (Windows don’t care THIS or this, in Unix they can be two different files in the same dir).

The key question is maintaining always the same capitalization on checked in files, and FoxPro have a fame of not taking care of it, so that’s why FoxBin2Prg have included a capitalization tool (filename_caps.exe) that is executed every time a conversion is made, and that can be used separately with a provided script (Normalize_Filenames.vbs). This normalization has to be made before the checkin. Remember this, and all will be all right.

Ok, now we are finished the default configuration for all actual and future projects!

 

 

Index of contents:

Using FoxBin2Prg with PlasticSCM
PlasticSCM - Download and configuration
PlasticSCM – Adding an existing VFP project
PlasticSCM – Working with branch per task
PlasticSCM – Working with branches with a second developer on same task
PlasticSCM - Desintegrate a task from the release
PlasticSCM - Synchronizing with a Git Repository
PlasticSCM – What’s next

Last edited Nov 4, 2014 at 7:10 PM by fdbozzo, version 13

Comments

No comments yet.