Archive for the ‘SVN’ Category

Synchronizing small projects in eclipse

August 17, 2009
  • To export the project as a zip: File>General>Archive File;
  • To import it back to the workspace: File>General>Existing Projects into Workspace
    and select the aforementioned zip file. This will result in a new folder in the root of the current workspace.

SmartSVN vs. TortoiseSVN

May 9, 2009

I just installed SmartSVN (version 6) today and I am very happy with it so far. It was much easier than I thought when migrating from TortoisSVN. Currently I still have tortoise installed but I probably will ditch it in the future. (Sorry tortoise!) Here are some comparisons (opinions may be inaccurate since this is my first couple of hours of using SmartSVN):

The first three are “thumbs-ups” and the last three are “less satisfactory” (Some customers are never happy, even it’s FREE!):

  • Project manager is the central hub for managing projects. This makes it easy for you to access all your working copies in one place without hunting around/drilling down into your filesystem, if you have multiple working copies scattered around.
  • “Project->Create From Directory” allows you to register existing working copies on your filesystem with the SVN Project Manager. The cool thing is you can keep on this registration process until all your working copies end up into the Project Manager view.
  • With Project Manager, you can “group” your projects. Go to “Project->Project Manager->Create Group” to create a new entry for grouping your projects.
  • In the most current version (v6), You cannot drag/drop inside the project manager tree view to group/re-group/re-order the projects; instead you need to use the “Move Up/Down” buttons, located on the right side of the tree view, along with the “<placeholder>” (which appended to the end of each group, on the left part of the tree view) and “Sorted project area, …”(which serves as the entry point where you insert your project, also on the left part). It’s kinda old school (similar to the way you traverse a tree structure using cursor) but once you figure it out, it’s no big deal.
  • SmartSVN is integrated with the Shell/filesystem, meaning if you have a working copy in your hdd, SmartSVN provides right-click/context menu for you to access the commands the way you do on TortoiseSVN. But there is no icon overlays as TortoiseSVN(?).
  • I kinda miss the big tortoise spinning around thing, when you export something directly form your repository. but i think i can live without it;)

force rebuild of flex projects

April 22, 2009

I am experiencing some bugs(?) in Flex Builder 3. The symptom is Flex launches the _existing_ application .swf in the “debug-bin” folder when I hit either “debug” or “run”  instead of compiling a new one even if I made changes in the source files. Same thing after the project is “Clean”. I am using TortoiseSVN to do the version control (not Subclipse since it’s not working a. under our office firewall; b. giving me “old client” errors when I updated my TortoiseSVN to 1.4 (now I am using TortoiseSVN 1.6.1).

So this might be an issue of TortoiseSVN, or Flex Builder alone; or maybe it’s because the Tortoise doesn’t get along well with Flex.

Anyhow, my current fix is to change the mxmlc setting for “HTML wrapper” to the new setting and then change it back before the new build. The setting is project> “Properties” > “Flex Compiler” > “HTML wrapper” > “Generate HTML wrapper file”.


March 31, 2009

create new project in repository

1. Create new folder in repository, such as “;
2. Import the working copy to the folder
3. Checkout from the repository back to local machine. I usually create another folder in the local machine (at the same workspace with a slightly different folder name); after the successful export, I delete the original working copy (and optionally rename the checked out folder to be the same name as the original copy)

switch when you rename the project om repository.

TortoiseSVN (UI client) cheat sheet

January 6, 2008
  • Starting a new project
  1. Create a new repository at server side. E.g.,;
  2. At the client side set up an empty folder with all the necessary structures inside it. E.g., codesnippets/trunk. Right click the folder->TortoiseSVN->Import to get the empty folders up to the destination repository;
  3. Once the structure is ready at the repository, select the folder of contents you need to import to the repository and import the content to the destination repository;
  4. Now with the repository set up at the SVN server, we would need to keep a working copy at the client side to keep version control in synchronization. We do this by “checking out” from the repository. To do this, create a clean folder (or select a folder that has no previous SVN checkout history) and right click->SVN Checkout and specify as the URL of the repository. This downloads the contents inside the repository to the folder.
  • Sending Your Changes To The Repository
  1. Use TortoiseSVN → Update or TortoiseSVN → Check for Modifications to see if there are any conflicts first;
  2. If there are no conflicts and your working copy is up to date, select any file and/or folders you want to commit, then TortoiseSVN → Commit…;
  3. If you need to rename, delete or move a file, use the SVN dialog menu to make the changes as to keep SVN aware of them. (TortoiseSVN is capable of detecting drag-drop to the files within a working copy of a repository.) Then repeat step 1, 2 to commit your changes to the repository.
  • Updating Your Working Copy With Changes From Others/The Repository
  1. The process of getting changes from the server to your local copy is known as updating. To update, select the files and/or directories you want, right click and select TortoiseSVN → Update in the explorer context menu.