Using Microsoft TFS as Version Control System with JDeveloper 11g

Integrating with Microsoft TFS source control system with Eclipse was a cakewalk. The TFS plugin for eclipse would work like a charm. However Microsoft TFS can also be used with JDeveloper. This small blogpost will explain how can this be done.

Install the Team Version Extension by Help->Check for Updates in JDeveloper

image

Restart your JDeveloper for this change to take affect. Next go to the Versioning Tab and click on Team System-Connect to Team System. I certainly don’t know what system it connects to but this is required as the first step. This probably locates the Team Foundations workspaces currently available in your local machine.

image

Next Create a new folder as your workspace, i.e. C:\<tfs_workspace>

Microsoft Visual Studio TFS should be installed. Install it somewhere in your local machine.

Now you can create a new Workspace either through the TFS Explorer or through TF command line.

Create a workspace on your local computer.

tf workspace -new -server:http://servername:8080 -login:user@DOMAIN,PASSWD <WorkspaceName>

Create a working folder mapping to map this workspace to the folder you just created.

tf workfold -map -workspace:MyWorkspace $/TeamProject/trunk/path/ C:\<tfs_workspace>

Otherwise Navigate to Microsoft Visual Studio > Source Control Explorer

image

Link your workspace with TFS, click on Local Path as C:\<tfs_workspace>

Go to JDeveloper and click on the Versioning Tab once again. Go to Team System->Set Workspace and choose the workspace that you just created.

image

To use the newly created workspace, in JDeveloper start a new application, i.e. C:\<tfs_workspace><Application> and then create your projects under it.

You can check-in all pending edits in your application to the source control in TFS. Once you check it in the file is locked as Read-Only. Changes can be done only by first checking out the file. The screen shot below shows how a file that has a edit pending is checked in to TFS and the corresponding command generated in the JDeveloper Message log.

image

.

7 thoughts on “Using Microsoft TFS as Version Control System with JDeveloper 11g

  1. Can you please show how to check out. I was succesful to do the above but I do not see check out option here, and the check out under Versioning> Team System is grayed out. I was trying for this and no luck

    Like

    • You will have to make sure that you have a workspace created for JDeveloper to be able to connect to TFS. Once you have created the workspace and mapped a local folder with the TFS folder you can use that in Your JDeveloper.

      Also Next time you create a composite in JDeveloper make sure that your work folder is your local TFS folder. Let me know if it helps

      Like

  2. Pingback: Developing JAVA Projects using jDeveloper and TFS as Source Control - Hosam Kamel's Blog

  3. Okay… what if I am on a non-windows environment and can’t install the tfs client? Isn’t that the point of platform agnostic software????

    Like

  4. Regarding how the plugin works out which TFS server to connect to, it gets this from the workspaces it finds. It gets the list of workspaces by executing the following command which retrieves workspaces from the local workspace cache on your machine and parsing its output.

    tf.exe workspaces /noprompt

    What this means is that you must have already in advance have created the workspaces that you want JDeveloper to see.

    Final thing to note is that the plugin looks for the Visual Studio 2010 version of TF.EXE which it uses to do all the heavy lifting, therefore this must be present. If you do not already have a development edition of Visual Studio 2010, the Team Explorer edition will facilitate this and the other steps described in the article and may be downloaded from Microsoft for free, however client access licenses are required to connect to a TFS server.
    http://www.microsoft.com/en-gb/download/details.aspx?id=329

    Like

If you have any comments, suggestions or feedback about the post, please feel free to type it here and I will do my best to address them asap