I finally figured out the major points for working with teams in WDSc. It uses a combination of CVS (Concurrent Versioning System) and WDSc. I will go over the major points in getting this setup and working. I am learning as I go and may update this article as I gain more knowledge in how this works. Feel free to leave comments and suggestions to make this article better.
First thing you need is a CVS server. Both Debian and Fedora make this process easy to setup. Mostly, you just install a base server making sure to install CVS. Then install Webmin. Webmin makes it easy to setup and start the CVS server. I won’t go into details on how to set this all up as there are many different resources on the web on how to set this all up.
Next, you need to setup a connection to your CVS server in WDSc. If you go to Window | Open Perspective | Other…, you will find a “CVS Repository Exploring” perspective. Select “CVS Repository Exploring” and click Okay. This will open up the “CVS Repository Exploring” for you so you can add your server. In the “CVS Repositories” window, right-click and choose New | Repository Location…. This will open up a wizard to setup the client side. Enter in your host and repository path. The repository path is the full path to where your files will go. The easiest place I have found this is through Webmin in the CVS module setup. Enter in your username and password and then choose finish. You have now setup a connection to your server.
Next thing you do is setup all of your team’s connection(s). When you create a connection to your iSeries (of AS/400), make sure to choose the Parent Profile of Team. Once all of your connections are setup to your liking.
You now need to share these settings with your team. This is where I had problems before. In the “Remote System Explorer” perspective, there is a window called “Team”. If you can’t find it, you can add it by going to Window | Show View | Other…. In the window that comes up choose Remote Systems | Team. In the team window, You will see a folder called “RemoteSystemsConnections” and under there will be your profile and “Team”. Right click on “RemoteSystemsConnections” and choose Team | Share Project…. Choose your server you just setup and click Finish.
Now you have the bulk of the work done. You just need to upload your settings to the CVS server and you are ready to share your connections with your team. Next, you will need to right-click on “RemoteSystemsConnections” and choose Team | Commit…. This will upload your settings to the server. You are now ready to setup the next team member.
On everyone else’s computer you have to setup the CVS server and go into the “Team” window and share the project, but instead on doing a commit, you do a Team | Synchronize with Repository…. This will add all of the team connections to your team member’s PCs. For any new connection, you have just have to do the sync every time.
Then you come to the “iSeries Projects Perspective”. In here you can create your projects and work with all of the files at once, then upload your code to the server when you are ready. The benefit here is then you can upload that project to the CVS server and another team member can download and make changes to the code and then upload to the iSeries and to CVS. The bonus to this is that more than one person can work on a project at a time.
There is one thing I have seen that makes sure that two people aren’t editing the same file at the same time. Go to Window | Preferences. In the preferences window choose Team | CVS | Watch/Edit. Check “Configure Projects to use Watch/Edit on checkout”. I am not sure how this works or how well this works but this is all I have found so far on this.
This is a “work-in-progress” article also located here. I am open to any and all comments if there is any problems with what I have written.
Mike Wills has been a IBM i developer since 2000 and a ASP.NET developer since 2006. Besides being a programmer by day, he is a father of two, is heavily involved in social media, and runs a podcast. You can find out how to reach him at mikewills.me