Home
TeamSite
Source Code Management
sbzoom
Has anybody out there used TeamSite as a source code management system? I want to use TeamSite instead of Visual Source Safe or CVS but am a little unsure of how to go about implementing it.
I know they have a product now called TeamCode to do just such a thing, but it is a bit much and a bit out of our price range. Besides, all it really is is a pretty face on some workflows.
So I was wondering if anyone had done such a thing and had some good ideas.
Thanks.
<b style="color:navy;">Whoah TeamSite!</b><br />
<Charlie/>
Find more posts tagged with
Comments
tvaughan
I use TeamSite to source control all the templates and workflows and custom scripts that our "TeamSite developers" write for purposes of enhancing TeamSite with value-add templates and so-forth, but I wouldn't recommend using TeamSite to source control Java or C files.
In TeamSite lingo, CVS and MS VSS both provide the capability to "GetLatest from an EDITION". TeamSite can't do that.
Also, where are the developers developing? On their desktops? In their /export/home directories? I wouldn't expect that they would develop their source files in their WORKAREA-- even if you did Samba mount it, because right after they develop code and compile it, what do they do? They test it. And do you want developers testing experimental code on a virtual filesystem hosted by a black box Interwoven server? Not really . . . .
Finally, ask youself if your developers use an IDE like VisualJava or something like that? Because there's no integrated menu-options to check files in-to and out-of a TeamSite installation.
In short, your developers will probably want your blood a week after developing off of TeamSite.
sbzoom
The thing is, we really don't have a versioning system right now. For our commerce we use VSS. And it sucks. I am not one of the people on that project, but all the people on it hate it.
We just started up a new project using all open source products. RedHat, Apache, Tomcat - all java. And we are using CVS. And so far, it sucks. Truly, its 30 years old and it shows.
As far as editors, we aren't fancy enough to buy any products like VisualJava. I use UltraEdit or NetBeans. Now, NetBeans does have a tie-in for CVS, but I'm not sure how well it works.
All dev is done on the dev machine. User uses VNC and logs in. Then does a cvs checkout of the project. Then they can -ant- it into their local tomcat dir. So all I really need is the entire project in their user directory. And downloading the files with Launch Pad puts them in your directory in whatever directory TeamSite uses as a temp.
Then I can change files, and ant them. And when it works, I can upload the ones that work.
And if each user has their own workarea, they can always "Get Latest" from STAGING.
What doesn't work so well is downloading files. You can only download one at a time instead of an entire project.
And, if its such a bad idea to hold java files in TeamSite, why did they make TeamCode? I've seen the demos and read some docs, and if it works the way they say it does it could be really great. But....
Whoah TeamSite!
<Charlie/>
tvaughan
A) I would give CVS a chance. It is X years old a still around for a reason. It is very simple, yet very powerful. Interwoven is more powerful in some regards (and less powerful in other), but it adds quite a bit of complexity.
I'm confused by the dev process, though. . . .it sounds like you are doing code changes on your local Windows machines and anting the project there. Is that right?
And so you're thinking about making your "working directory" whatever directory it is that LaunchPad downloads files to, huh? Interesting . . . . I guess that could work. I just usually go by the rule-of-thumb that "as soon as a developer has to interface with a GUI they lose productivity." This process would have your developers use both the LaunchPad (for file xfers) and the TeamSite GUI (for checkin/checkout).
C) In regards to TeamCode (I haven't seen/researched it): do you know if it uses the same old TeamSite backing store for versioning control?
Tom
sbzoom
A) I will give CVS a chance. Things like not being able to see it really bothers me. Files just get saved into a void. Only 1 or 2 people have access to that machine and neither of them is me. So I never know what files are in there or aren't. I have to download that cvsweb.cgi I guess. Or start using that apache project:
Developer Solution
and
TeamCode
. They are pretty interesting. And, the more Interwoven grows, the more I trust their products. (Whereas, with 4.2, I thought it was garbage and I could have done a better job myself.)
Whoah TeamSite!
<Charlie/>
Migrateduser
Yes customers have used TeamSite for code-control. Our functionality covers a broad range of what's needed for team-based development including: branches, task based workflow, merging, and vis/source differencing. One example of how this could be done is provided in TechNote 048788.
TeamCode will provide a lot of value by making it easy to setup lifecycle management processes and the underlying repository structure. We also have plug-in(s) for different development environments starting with Eclipse/WebSphere Studio Workbench based environments to expose TeamSite code-control functionality within the IDE. This plug-in will be free and available on 15Aug02 at support.interwoven.com
sbzoom
Darren,
Thanks for the response. That document is a pretty good reference point and it makes a lot of sense. There are a few things that still aren't clear to me though, maybe you can give me a few more pointers.
I have to execute the code on my dev server by building it (with ant). To do this I need all of the files in the project. And so far, TeamSite only does one file at a time (to insure locking). So how would I get all of the project files into the users local directory on my development machine?
And, what happens during a build? The .java files all get compiled and bundled into either a .jar or a .war file. So which files get moved to INTEGRATION and QA? The .java files or the .war file? The .war file is the one that gets deployed so you can click around on the site. If so, how does this file get built and stored in TeamSite?
If you have any ideas/pointers on these items it would be a really big help. And thanks again for pointing me to that document.
Whoah TeamSite!
<Charlie/>
Migrateduser
Hi Charlie,
Sorry haven't gotten back sooner but I've been away until today. Let's see...couple of options to move files to the local machine:
1) Use a tool like Beyond Compare or File Synch to compare and synch between local and mapped TS drive
2) Setup OpenDeploy to do this
3) Use our new TeamCode plug-in for WebSphere Studio Workbench or the open-source Eclipse project based tools...this plug-in will be available for free by mid-month and will make it easy to download, synch, merge, and version assets with any tool built on either WSWB or Eclipse
Regarding your second GOOD question, couple of things to consider:
1) In most cases you'd just move your .war or .ear files to INTEGRATION|QAand leave your SOURCE in DEV where only the developers have access...in INTEGRATION you can then enable biz users via templating to add content to the application and using a TeamTurbo provide virtualization at each stage of the development environment so your content contributors can see their changes in real time
2) The only negative to this of course is you're having to store and version your binaries...some people don't care about this others do...but to provide virtualization all of these assets have to be present and packaged together in TeamSite
sbzoom
Darren,
Thanks for the reply - and no worry about the delay. I was thinking about the first question and I think I can solve the problem simply by mapping the drive.
If I give each user a workarea then each person can mount a drive from their local unix directory to //serverip/IWServer/default/main/branch/subbranch/WORKAREA/userarea. Then they can edit the files directly in their workarea and run "ant" and build it to their local machine.
But... does such an arrangement of workareas agree with the grand scheme? Meaning, should each developer have their own workarea or should they share based on project? It seems that developers would be able to Get Latest and Submit pretty easily because any changes they made in the mapped drive would appear in the TS window.
For the second question, would the .(w|j|e)ar files be built manually then added to TS? Or should a script/workflow run the "ant" script and copy the file to INTEGRATION?
One last question... Do you think TeamCode is completely necessary? I have realized that it is really just a nice front end that uses the OpenAPI with some new workflows. But it seems that I can have all the same functionality with plain ol' TeamSite.
Thanks again for all the help.
Whoah TeamSite!
<Charlie/>