What does Assembla do? Assembla provides tools and services for building software quickly using global teams.
Is the service free? Yes, the online service is free for individuals and small groups. We make money when we have larger groups that need premium tools, portfolios, and private servers.
500MB of SVN for free…
I have been using Subversion for project work for some time now, and it seems that most agree that it is the best Open Source solution available. I have enjoyed the use of SVN provided by clients or employers, but only recently started considering replacing my old local VSS server with a web-enabled SVN server of my own. My motivation is to get code that I own off-site and have some redundancy along with improved accessibility. I am also interested leveraging the benefits of the continual development and refinement of SVN as an Open Source project. TortoiseSVN is a good example of that.
I started by researching the requirements for installing SVN server. Installation on a local Windows host seemed doable, but I wanted to install it on my web server. Since my host doesn’t support applications, I’m on my own. I don’t even know what OS the server is running. From what I’ve read, installing SVN on a site would be a chore. Plus it would compete for space with site content. An alternative would be to pay for a specialized SVN hosting service. Hard to justify the continual overhead for that.
So I Googled for free SVN. One result stood out as promising: Assembla. They give away a 500mb SVN account with unlimited users and an integrated bug tracking setup (Trac). For the quick, small projects I am looking to use it for, I can accept the risk that Assembla flakes out as a business entity. Worst case I will still have my latest build on my local. Assembla’s business model seems pretty sound to me anyway - a successful freelance coder will eventuallly need more space if they get cosy using the free service and will become a paying customer.
Here aro some of the Assembla tools:
Subversion
Subversion is the most popular centralized source code repository and version control system. Our subversion includes email alerts on commit, Trac code browsing, and a post-commit hook to trigger. And, we know that reliability is important for subversion users, so we backup to failover servers in real time. Learn more.
Trac
Trac is a popular open source ticketing system, with the mission to "help developers write great software while staying out of the way." You can import and export trac projects from Assembla. We enhance trac with simplified team management, HTML alerts (called "notifications" in trac), and hourly and weekly alert summaries. We support a few trac plugins, including XML-RPC for Eclipse integration.
Scrum
The scrum tool collects reports from your team members in the stand-up meeting format: "What did I do, What will I do, What do I need."
Chat
The chat tool provides a persistent chat room that you can use for daily meetings or just to drop in.
It took me a while to find it, so decided to post this.
Below is a list of known problems on Windows Vista.
-
special columns don't show.
The Windows explorer in Vista has changed quite a bit, and one of those changes was to abandon the additional columns but introduce a new "property system". Since the property system is file type based, we can't add a column for Subversion information anymore 
-
The context menu may look wrong. That's because TortoiseSVN uses ownerdrawn menus. Since Vista changed the appearance of the context menu, it switches back to the 'old' look as soon as it detects an extension which uses ownerdrawn menus.
This has been fixed on the TortoiseSVN trunk. You can use a nightly build if you like. Or, as a workaround, enable the checkbox "Enable accelerators on the top level menu" in the Look and Feel page in the settings dialog.
-
Exporting from a working copy only copies some empty folders.
This bug is due to a change in the SHFileOperation API. Since the API doesn't work the same anymore on Vista as it did on Win2k or XP, we've already used another way for exporting. If you're affected by this, you can try a nightly build.
-
UI rendering
There are some problems when resizing the dialogs. After resizing, black areas and artifacts of borders and other controls can still show over other controls. Minimizing and restoring the dialogs will get rid of those and the dialogs will show correctly again.
This has been fixed on trunk, you can use a nightly build if you like.
-
Version 1.4.2 has some problems with the explorer. Use version 1.4.3 which has this fixed.
-
very slow repository access.
If every access to the repository is very slow and sometimes even times out, even though everything is working ok from an XP machine, then you most likely hit a special problem in Vista with the TCP-Autotuning feature. To get rid of these problems, open a command prompt and type netsh interface tcp set global autotuninglevel=disabled. You can read more about these problems here.
Apart from these known issues, TortoiseSVN will work on Windows Vista.
Here are the steps for installing SVN on windows platform:
- Download everything
- Go to http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 and download the most recent svn-x.y.z-setup.exe. At the time of this writing, the latest version was svn-1.2.0-setup.exe.
- Go to http://dark.clansoft.dk/~mbn/svnservice/ and download SVNService.zip.
- Go to http://tortoisesvn.tigris.org/download.html and download the most recent installer. At the time of this writing, the latest version was TortoiseSVN-1.1.7-UNICODE_svn-1.1.4.msi. (It doesn't have to be the exact same version as the svn installer you got in step 1. See the compatibility chart.)
- Install the server and the command-line client
- Run svn-x.y.z-setup.exe and let it install stuff.
- Go to Control Panel > System, go to the Advanced tab, and click the "Environment Variables" button at the bottom. Click the "New" button (either one, but if you're undecided, use the one under "System variables"), set "variable name" to SVN_EDITOR, and "variable value" to the path and filename of a text editor of your choice (e.g., C:\Windows\Notepad.exe). OK all the way out.
- Create a repository and configure access
- Create a new directory somewhere out of the way; this is where your repository will live, but you'll almost never actually open the files directly. I made a directory called svn_repos directly under my C:\Documents and Settings, just so it'd be out of the way.
- Open a command prompt and type: svnadmin create "C:\Documents and Settings\svn_repos"
- In Windows Explorer, browse to the C:\Documents and Settings\svn_repos\conf directory (which svnadmin just created for you), and edit a couple of config files:
- Open the svnserve.conf file in a text editor, and uncomment the [general], anon-access = read, auth-access = write, and password-db = passwd lines. Save.
- Open the passwd file in a text editor, uncomment the [users] line, and add the username and password you want to use when connecting to your subversion server. Save.
- Start the server manually, and create a project
- In your command window, type: svnserve --daemon --root "C:\Documents and Settings\svn_repos"
- Open a second command window, and type svn mkdir svn://localhost/monkey
- You'll see the text editor you specified in step II.2, with some text already in it. Type a comment, like "Created the monkey project", at the beginning of the file (before the line starting with "--"). Save the file and close the editor.
- If your Subversion login is the same as your Windows login, then type your password (the one you put in the passwd file) at the prompt, and hit Enter. If your Subversion login is different from your Windows login, then just hit ENTER at the password prompt, and Subversion will then ask for both your login and your password.
- Subversion should tell you that it "Committed revision 1." Congratulations! You just checked a change into Subversion. Throw yourself a party. (Yes, creating a directory is a revisioned change — you can go back and get the repository as of a time before that directory existed. This is novel stuff for folks like me who still use VSS at work.)
- It's conventional to have /trunk, /branches, and /tags subdirectories for each project (your code goes into trunk, and the others are where you put, well, branches and tags). Go ahead and type svn mkdir svn://localhost/monkey/trunk (and notice that, after you enter a checkin comment, it doesn't prompt you for your password again — it's smart like that).
- Start the server for real
- Go back to the command window that's running svnserve. Hit Ctrl+C to stop it.
- Open the SVNService.zip that you downloaded earlier. Extract SVNService.exe into your Subversion bin directory (Program Files\Subversion\bin). Yes, it's important that you put it in this directory; it has to be in the same place as svnserve.exe from the Subversion distribution.
- In a command prompt, type svnservice -install --daemon --root "C:\Documents and Settings\svn_repos"
- Go to Control Panel > Administrative Tools > Services, double-click the SVNService service, and change its startup type from "Manual" to "Automatic". Now Subversion will start every time you start Windows.
- Start the SVNService service (by selecting it in the Services list, and clicking the "play" toolbar button).
- Go back to a command prompt, and type svn ls svn://localhost/
This will list all the files in the root of the repository. If all is well and you've got a real Subversion server running now, you should see: monkey/
- Install TortoiseSVN
Sure, you can get by with a command-line client, but TortoiseSVN is cool — it integrates Subversion into Windows Explorer. You get little overlay icons showing the status of each file (in sync, needs to be checked in, not yet in the repository, etc.), and you can do pretty much everything you need by right-clicking on files and folders.
- Run the TortoiseSVN installer you got back in part I.
- Create a monkey directory somewhere on your hard drive. Right-click somewhere in that folder and select "SVN Checkout..." Type svn://localhost/monkey/trunk/ for the repository URL and click OK.
- Create a file in that directory, any file. Right-click the file and select TortoiseSVN > Add. Notice the little plus-sign icon that appears.
The file hasn't actually been checked in yet — Subversion's commits are both batched and atomic, so this new file, together with any other new files you added, any files you changed, any files you deleted, any files you renamed, any directories you added or deleted or renamed, will all show up on the server all at once, as a single revision and a single checkin, the next time you right-click and select "SVN Commit".
- Make it run on the network
Are you kidding? You're already networked. Go to another computer on your LAN, install TortoiseSVN, and do an "SVN Checkout...". When you specify the repository URL, use the same URL you did before, but replace "localhost" with the actual name of the computer that's running the Subversion service (so in my case, the repository URL is svn://marsupial/monkey/trunk/ — nice little menagerie, there).
And there you go — Subversion up and running on Windows.
Version Control with Subversion, a free book about Subversion is published by O'Reilly Media is included as an attachment to this post :) svn-book.pdf (1.4 MB)
|