RE: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
I use eclipse svn. Gives me a nice workflow as there are good plugins for SVN Actionscript for eclipse. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Robert Sandie Sent: 12 December 2005 19:15 To: Flashcoders mailing list Subject: [Flashcoders] Success Stories with Flash Friendly CVS Systems? On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
[Flashcoders] Success Stories with Flash Friendly CVS Systems?
On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
What's your situation? How big is your team, how often are you changing binary assets, are you working from a large class library, etc? I use SubVersion and its super nice. Nothing is perfect when working with binary assets which can't be merged, etc. e.d. On 12/12/05, Robert Sandie [EMAIL PROTECTED] wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Yes i agree, Subversion seems to do the trick for me. eric dolecki wrote: What's your situation? How big is your team, how often are you changing binary assets, are you working from a large class library, etc? I use SubVersion and its super nice. Nothing is perfect when working with binary assets which can't be merged, etc. e.d. On 12/12/05, Robert Sandie [EMAIL PROTECTED] wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
RE: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Robert, We use Subversion as well, and I've found the following very useful for development to production life cycle purposes [very high macro level] - your actual mileage may vary *wink*: [/local-source-sandbox] - {publish to} - [~/local-build-dirs] EX: Subversion sandbox = e:\development\svn-sandbox\blah\* Builds directory struct = e:\development\svn-builds\blah\* The local build directory structure contains only the published .SWF's for local testing, it's a snapshot of the development server setup for the site/project - see below... [~/local-build-dirs] - {ftp xfer} - [~/devsvr-web-test] The dev server web is a snapshot of the production environment. The local files are ftp'd to the dev server for network testing - just have Apache serve 'em on up... EX: Development server snapshot = /mnt/www-root/dev-sites/blah/* (or whatever) Testing it with something like http://www.yoursite.com/blah [~/devsvr-web-test] - {ftp xfer} - [~/production-svr] Once tested and debugged, the dev server 'wares snapshot can then be synchronized with the production web server and rolled out... EX: Production server snapshot = ~/httpdocs/* (or whatever) This'll serve up as your projects URL - http://www.blah.com If this was helpful, that's great! If not, let's just keep this as our little secret... *grinning* -- Dok Skyymap Inc. 770.321.3967 Office 770.321.3454 Fax -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of eric dolecki Sent: Monday, December 12, 2005 4:38 PM To: Flashcoders mailing list Subject: Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems? What's your situation? How big is your team, how often are you changing binary assets, are you working from a large class library, etc? I use SubVersion and its super nice. Nothing is perfect when working with binary assets which can't be merged, etc. e.d. On 12/12/05, Robert Sandie [EMAIL PROTECTED] wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
While I personally just use CVS, according to the docs VSS is pretty much the only one that integrates with the project panel in Flash.. -K On 13/12/05, Mike Boutin [EMAIL PROTECTED] wrote: Yes i agree, Subversion seems to do the trick for me. ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
If you develop Flash in Eclipse, Subclipse (SVN plugin) is excellent. Jim Kremens On 12/12/05, Karthik [EMAIL PROTECTED] wrote: While I personally just use CVS, according to the docs VSS is pretty much the only one that integrates with the project panel in Flash.. -K On 13/12/05, Mike Boutin [EMAIL PROTECTED] wrote: Yes i agree, Subversion seems to do the trick for me. ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
anyone want to write a nice subversion project panel? :o) There should be an opensource framwork out there to use. Campbell While I personally just use CVS, according to the docs VSS is pretty much the only one that integrates with the project panel in Flash.. -K On 13/12/05, Mike Boutin [EMAIL PROTECTED] wrote: Yes i agree, Subversion seems to do the trick for me. ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders -- ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
I also use SVN/Subversion. I worked with CVS for years, and really do recommend SVN rather than CVS, as SVN is (as the authors state) CVS redesigned from the ground up to solve some of its basic issues. Workflow wise - nothing fancy. We have a top-level shared-classes folder and a bunch of parallel project folders; and use Ant to build everything for deployment. Ian On 12/12/05, Karthik [EMAIL PROTECTED] wrote: While I personally just use CVS, according to the docs VSS is pretty much the only one that integrates with the project panel in Flash.. -K ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Robert Sandie wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. My team has been using Subversion (SVN) for source control on our Flash projects with great success for nearly eight months now. In our largest SVN repository, we've had up to six developers working simultaneously and over 500 classes. At home, I've been using Subversion locally to provide a simple means of backing up previous versions of code on personal projects, Flash and otherwise. Here's how we do it: Although Subversion and other version control systems typically don't offer support for binary merges, we've managed to sidestep this issue in Flash development by keeping _all_ of code save for the simplest test chassis in external class files rather than inside FLAs. We very rarely write any code within the Flash IDE, rather we use Eclipse and FDT, which integrates relatively well with Subversion via the Subclipse plugin. If FDT is out of your price range, you may want to consider SEPY and ASDT as alternatives. Alternatively, TortoiseSVN provides the same degree of integration with the Windows explorer shell. We also favor laying out components via code, and in more complicated cases, implementing data-driven layout engines (in a manner strongly reminiscent of Flex), as opposed to doing layout on the stage. Aside from very infrequent changes to the FLAs' libraries when we need to add component symbols, this allows us to keep the number of binary merges to a minimum (typically only once every month or so). Subversion also works very well for us as the trunk, branch and tag metaphor allows developers to branch code off the main development trunk when necessary to refactor significant units of code and tags allow us to snapshot major milestone releases for keeping track of features and regressions. Lastly, Subversion's ease of integration into Apache and WebDAV makes it trivial to allow remote access. This is particularly important as our team operates out of two offices nearly a hour's drive apart and quite a few of us work from home on occasion. As a caveat though, we specialize in Flash RIA development and have little need for manipulating FLAs other than adding or removing component and graphical assets to the library. As such, your mileage may vary, depending on your development methodologies and the frequency in which your team needs to make changes to your FLAs or other binary files. Jim ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Small Team - 2 Flash dev's, 1 PHP/Database dev, and 1 CSS/Designer dev. Not really changing binary assets often (assuming your talking about JPEG's not SWF's) Somewhat large library, using a Delegation Event Model for Actionscript and PHP is using many custom classes. Looking for something that the entire team can use. Assuming your SubVersion workflow is: Checkout needed Projects, FLA and AS's via Subversion Edit using Flash 8 and SE|PY. Edit using HTML in Dreamweaver 8 if necessary. When finished Close out and Update via Subversion. Does that sound about right? I guess my question is anyone using Microsoft Visual SourceSafe, that is built in with Flash 8? -Rob eric dolecki wrote: What's your situation? How big is your team, how often are you changing binary assets, are you working from a large class library, etc? I use SubVersion and its super nice. Nothing is perfect when working with binary assets which can't be merged, etc. e.d. On 12/12/05, Robert Sandie [EMAIL PROTECTED] wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Judah Frangipane wrote: We have a setup similar to yours. We keep all AS in external files. We still have trouble merging changes from other developers. How do you handle when TortoiseSVN doesn't merge the changes? Have you resorted to locking the files or setting up a linear development structure? We very rarely lock files (I can only remember one instance where we did that), though our typical practice has been having individual developers own different parts of the class tree and hold primary responsibility for their classes, although other developers can and do contribute to and make changes in those packages as well. This tends to minimize the need to do manual merges, though it doesn't eliminate the need. As an added benefit, this approach also helps keep difficult manual merges in the hands of the developer who best understands the particular class (as I'll describe later on). In my experience, following good object-oriented coding practices and deciding upon our APIs well in advance have helped us to minimize drastic changes to our code of the sort that necessitate widespread manual merges. We also have a tendency to pass our data between packages and applications using transfer objects. This helps to reduce dependencies between major packages, even within a single project, and allows us to develop more independently in our own spaces while still keeping things relatively easy to integrate. In practice though, we do occasionally run into situations where SVN cannot automatically resolve merges, so we merge by hand when we need to. Fortunately, this isn't too often, and many times the differences end up being just debugging traces. For truly horrendous changes, say refactoring a package of 20 or so classes, I'll typically work on my own branch until I'm done before trying to reintegrate it into the trunk to spare everyone else the grief of dealing with it all. However, this isn't to say that it's fun. What it does do though, is to keep the need for manual merging of code and testing of the new changes restricted to one person and in a single go rather than spreading among multiple developers with possibly different levels of familiarity with the code. On the flip side, when I would like to make changes to code that I'm only very marginally familiar with and which some other developer owns, I've found it helpful to either consult with the owner first (via instant messaging or in person), or send them a patch with my proposed changes (and working locally with my changes for the time being), letting the owner validate and check the changes back into the trunk, making any manual merges as necessary. Having worked with source control systems of both the locking (Microsoft Visual SourceSafe) and the merging (CVS and Subversion) varieties, I must say my preference has been toward the latter. Although having to occasionally manually merge changes does take time, I've found that for me, especially when working in a large and/or geographically distributed team, the merging model is more efficient than waiting upon locks being released and then making changes, and particularly so if you can have the difficult merges done by developers who can own and understand their parts of the class tree. Jim ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Re: [Flashcoders] Success Stories with Flash Friendly CVS Systems?
Well, I have a non-best practice success story, if that's any help. I have a very unorthodox setup, but it works really well considering. I have a home office linux server running off a cable modem. I run all the standard linux goodies off it including Subversion. Pretty much all users are on Windows and run TortoiseSVN. I make repositories by hand on the command line. Holding all assets in the repository takes up a lot of space. Using the repository for video work is not feasible. We worked on a multimedia cd-rom, and the entire repository for the 300MB of work files is approx 1.8GB. Most repositories aren't that big. I also *blushes* have a single classpath for all clients. This is because when I first started using Subversion it was for my own personal use. Now we can't see how we ever worked without it. I haven't used Trac, nor do we have any post-commit hooks for mail or anything. Based on my non-best practices setup, here's what a best practices setup would be like: Crunching assets can take a while. Get a dual cpu setup to crunch those big flas. Make sure you have a good terabyte of space, its a disk hog, too. Use post-commit hooks for email, and use detailed log messages to cut down on communication overhead. Write some shell scripts (or whatever you like) to handle the creation of repositories, users, and hooks. This may sound hackish, but the reason I put this as a best practice is because I don't think any pre-packaged solution can come close to a good shell script here. Based on the best practice above, naturally you should be running all this on a Linux/BSD box. You really should have someone as a designated subversion admin who knows the ins and outs. You absolutely need someone there who is available and can provide training wheels for new subversion users. It ain't going to be easy. Have a classpath folder for each client, along with a separate repository for your core classes. Use inheritance heavily. Example: You have a Menu class such as: com.company.gui.Menu You customize this menu for a client: clientMenu extends com.company.gui.Menu But you also use com.company.gui.Menu for a bunch of other projects. So have a 'main' classpath repository that contains all your core classes, and use inheritance for your individual client needs by having a special classpath within the project's repository. Yes, this requires two updates, but it is a better solution. I think the main issue with version control in a web/flash environment is workflow. Getting project managers and designers to all comprehend the intricacies of version control takes finesse. I just tell project managers to 'right click and update'. I tell designers its like ftp, only cooler. And programmers just get it. I hope you find this useful, but more importantly, I hope it creates some discussion. I don't pretend to know a lot about version control, and perhaps there are others out there who can give me some good schoolins. Robert Sandie wrote: On my fourth large flash project and have yet to come up with a sound CVS system/workflow for Flash. Does anyone have any best practice stories regarding version control and integration into web development projects? Would love to hear. Robert Sandie ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders -- _ __ __ | | \/ ___\ Chris Hill | | / /_/ [EMAIL PROTECTED] |/\___ / http://ubergeek.tv /_/ The Smell of Geek! - ___ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders