Introduction
What is Subsync?
Imagine you have a laptop, a desktop in office and another computer at home. You wish to have the contents in all your computers synchronized and you figured that copy pasting is a chore. We now have a solution to your problem. All these hard work is gone with Subsync!
Using the powerful Subversion backend, we have converted a tool used by programmers for syncing code files, and further tamed the beast to be usable by end-users like you and me without any prior knowledge of its technicalities. If programmers can trust their trusty and sensitive code to be synchronized by Subversion, you too can trust Subversion with anything!
Subsync offers a cross-platform solution to your problem with a user-friendly interface to abstract the level of complexity involved in syncing. So what more are you waiting for? Go on, download the latest version from http://code.google.com/p/subsynct/ and start syncing away!
Why Subsync?
Subsync is powerful software that can keep all your computers synchronized. One click and your computer is up-to-date. It is an open-source project and is FREE to use with no annoying restrictions! Indeed, there are plenty of sync-tools out there, so what is so special about Subsync? What really distinguishes our software from any other sync software is that you can undo any sync and travel back in time to correct your mistakes. We even included an easy way to sync through thumb-drives, so you may bring your work wherever you go! However that is not all, we resolve to offer much more than the above mentioned features. Here are some:
Features
Simple GUI
We have engaged in using the Subversion (SVN) backend for syncing. Subversion is really a programmer's tool in managing source code. And you know programmers, their tools, although over-complicated, are really over-powerful as well. So we seek to dumb down the complexity as much as possible and make it simple enough for general users.
Powerful Syncing
As mentioned earlier, we used Subversion as our backend. With that, comes powerful text file merging, incremental backups, conflict management, etc, all that comes along with Subsync. For more information, check out the next section 'How does Subsync work?'
Incremental Backups
Subsync tracks the changes in your files, and saves every change without making entire copies of your files.
OS Agnosticism
Linux, and Windows users‟ alike, or any other platforms that support the Mono project as well as GTK toolkit, you'll enjoy the very same app, on all OS, with no disparities.
Network Sync
Subsync allows you to sync your files over a network/internet. This way you don't have to worry about bringing your thumb-drive.
Thumb-drive Sync
Don't want to use our network sync feature? No worries, sync through your thumb-drive.
Advanced tools
Are you a power user who doesn't wants to go through a barrage of menus just to sync a folder? No worries, we offer a powerful Command Line interface which lets you harness the power of Subsync in greater depth.
Open Source, and FREE!
Wait, how much do I have to pay? Nothing. That's right. Nothing! If you don't like it, you can use our installer to successfully uninstall Subsync from your PC. If you like it, well, do send us your feedback and make our day!
Time Travel (Back-up traversal)
“Time Travel”, is basically our term for backup traversal. There are many occasions when you might be working on data on the computer, and after making some amendments your data is lost somewhere due to some unforeseen reason. This is when you would move back in time, or rather, revisions, to before the data is lost. This way, you would not have to worry about the mistakes you might make while you are meddling with it.
Exclude Filter
Don't want Subsync to sync all the files/sub-folders in a particular sync? Use our filters option to exclude what you don’t want to be synced.
How does Subsync work?
Understanding Subsync
Before you dive right into Subsync, it will be good for you to understand how Subsync works. All folders are synchronized into a central repository, which will be created automatically for you every time you create a New Sync. Running through the steps of a New Sync, will only yield you a repository-folder pair. To add a second folder to the repository, simply add a new folder to an existing sync, and then you can begin syncing any amount of folders to the central repository.
What is a central repository? Think of a central repository as a database by which everything is stored, including all the changes you have made in the past, known as revisions.
Undo-ing your changes
Subsync maintains a history of your changes (knows as revisions) so that should you want to undo them, you can do it in one easy step using our ‘Time Travel’ option. You can create several repositories for use with Subsync.
Syncing Over a Network
As users ourselves, we understand that most syncing needs are required between computers, and not within a computer itself. While Subsync and most other sync tools allow users to sync with an intermediate storage medium such as a thumb drive, we understand the hassle of it too. That is when network syncing comes in. The powerful Subversion backend used in Subsync is capable of serving its syncing features over the network or the internet. This way you can have a repository on one computer and sync it with a folder on a different computer.
Conflict Management while Syncing
If there’s more than one folders being added to a repository, chances are (although slim) that at some point you or others working on those files make conflicting changes on the same piece of text and sync it. To clarify, here is an example. The repository is currently at a revision and contains a file named ‘Read.txt’ that contains a single line “This is a read-only file”.
Now, you sync two different folders with your repository and edit the file in both places. In one folder you edit the file to ‘This is a write only file’ and sync it with the repository, which is now at revision 3. It may happen that you or others changed the same file in another to: ‘This is A write protected file’. When you sync this folder now, you’ll get a conflict.
With Subsync, you don’t have to worry about such situations as it offers a powerful conflict management option to auto-manage your conflicts!
Installing Subsync
You can download the latest version of Subsync from our homepage http://code.google.com/p/subsynct/. Subsync comes in a self-extracting package which holds information regarding the application setup and installations. When you double-click the package, it will guide you through the various steps to install Subsync at your custom location. However, we encourage you to follow the default settings for a fast and hassle-free installation. If at any point of time you wish to uninstall/repair Subsync, you may use the same package to successfully uninstall/repair the application for you.
Getting Started
This section will guide you through how to use the graphical user interface (GUI) for Subsync, and create your first sync. When you first start Subsync, you will see the management interface as displayed below.
http://subsynct.googlecode.com/files/1.JPG
To start off, you will have to create a repository, a directory to share with your fellow friends and colleagues. The instructions below will guide you step-by-step and help you create your first sync repository using Subsync.
Creating a sync repository
On the Subsync window click on New Sync. This will direct you to a wizard that prompts you to enter details required for the new sync repository. http://subsynct.googlecode.com/files/1.JPG
On the Select Folder prompt, click on the dropdown menu to browse and select the folder you want as your sync repository. Click Next. http://subsynct.googlecode.com/files/newsync1.JPG
On the Sync Name prompt, enter a title. Click Next. http://subsynct.googlecode.com/files/newsync2.JPG
On the Description prompt, enter a description (optional). Click Next. http://subsynct.googlecode.com/files/newsync3.JPG
When syncing, it may be possible to come across conflicts, and should you not want to have to handle them manually, simply mark the checkbox on the Conflict Management prompt. This indicates that you want Subsync to automatically resolve conflicts for this sync. Click Next. http://subsynct.googlecode.com/files/newsync4.JPG
On the Repository Location prompt, if you would like to set the custom repository, simply mark the checkbox, or else, you may browse for the repository folder of your choice. Click Next. http://subsynct.googlecode.com/files/newsync5.JPG
Finally, on the Select Icon prompt, you may choose an icon that you like. This icon will then be used for your sync. Click Finish. http://subsynct.googlecode.com/files/newsync6.JPG
Congratulations! You have just created your very own repository!
Thumb-drive sync
For thumb-drive sync, follow the same steps as mentioned in “Creating your first sync” above for creating new thumb-drive sync but in step 6, choose the custom repository location to be on your thumb-drive. http://subsynct.googlecode.com/files/newsync5.JPG
Adding a local folder to a sync
On the Subsync window, click on Add Folder http://subsynct.googlecode.com/files/1.JPG
On the Select Folder prompt, click on the dropdown menu to browse and select the folder you want to sync. Click next. http://subsynct.googlecode.com/files/addsync1.JPG
On the Select Sync prompt, you may choose an existing sync job, or check the box if you would like to perform a thumb-drive sync instead. Click next. http://subsynct.googlecode.com/files/addsync2.JPG
On the Sync Name prompt, enter a name to call this sync repository by. Click next. http://subsynct.googlecode.com/files/addsync3.JPG
On the Description prompt, enter a description (optional). Click Next. http://subsynct.googlecode.com/files/addsync4.JPG
When syncing, it may be possible to come across conflicts, and should you not want to have to handle them manually, simply mark the checkbox on the Conflict Management prompt. This indicates that you want Subsync to automatically resolve conflicts for this sync. Click Next. http://subsynct.googlecode.com/files/addsync5.JPG
Finally, on the Select Icon prompt, you may choose an icon that you like. This icon will then be used for your sync. Click Next. http://subsynct.googlecode.com/files/newsync6.JPG
Congratulations! You have successfully created your first repository-folder pair!
Adding a Network Sync
Before you begin, here are some of the requirements for network sync:
- You must have an existing repository created using Subsync. (If you don’t have one, please go through the section “Creating your first sync repository” before adding a network sync)
- You must have Subversion installed (You can install it at: http://alagazam.net/Setup-Subversion-1.6.6.msi)
- Administrator access (Windows users will need to run Subsync as administrator to create/start/stop the SvnServe service. Linux users need not worry about this)
Once you fulfill the above requirements, please set up SvnServe inside Subsync as described in the section “Setting up SvnServe” further in this guide.
To sync from one computer A to another computer B, computer A must have SvnServe running. Also computer B must be aware of computer A’s network/internet IP address or hostname. Once you have SvnServe running on A, you can follow the steps below on computer B to sync a folder.
On the Subsync window, click on Add Folder (for Sync over Network).
On the Select Folder prompt, click on the dropdown menu to browse and select the folder you want to sync. Click next.
On the Sync URL prompt, enter a URL you want to sync this folder to. Click next. Note: The format of the SVN URL is as follows: svn:///
- Network address: this is the IP address, or the hostname of the computer running SvnServe. If you are running on the same computer (example, computer A), it is ‘localhost’.
- Repository name: This is the folder name found in you repository folder. You can otherwise get this by looking at the last folder in Repository URL in Sync Menu.
On the Sync Name prompt, enter a name for the sync. Click next.
On the Description prompt, enter a description for your new sync (optional). Click Next.
When syncing, it may be possible to come across conflicts, and should you not want to have to handle them manually, simply mark the checkbox on the Conflict Management prompt. This indicates that you want Subsync to automatically resolve conflicts for this sync. Click Next.
Finally, on the Select Icon prompt, you may choose an icon that you like. This icon will then be used for your sync. Click Next.
Subsequent Syncs
Once you have created a few syncs, when you start Subsync the next time, you will see the minimal interface with all your previously created syncs as displayed below. You can simply click on the icons and they will begin their syncing right away!
Changing Repository Directory
If you click on the Settings tab on the toolbar, you will be directed to the window below, where you may change the location of the directory containing your custom repositories.
Minimize to Tray
You may configure Subsync to minimize to System tray instead of Taskbar on your computer for a much neater appearance. On Windows, the system tray is located on the Taskbar (Desktop), usually at the bottom right corner next to the clock. It contains miniature icons for easy access to system functions such as antivirus settings, printer, modem, sound volume, battery status). To enable this, simply check the box as shown below:
http://subsynct.googlecode.com/files/Settings-new.JPG
Please note that it will only take effect the next time you run Subsync.
Starting Svn Serve
When you click on the Settings tab on the toolbar, you will be directed to the window below, where you may set up SvnServe for syncing over a network/internet. As mentioned earlier, to use this feature you must satisfy the following:
- You must have Subversion installed (You can install it at: http://alagazam.net/Setup-Subversion-1.6.6.msi).
- SvnServe can only serve repositories on the repository directory saved in Settings.
- Due to the limitations of SvnServe on windows, you will need to run Subsync as an administrator to create/start/stop the SvnServe service, such that SvnServe can be run seamlessly with Subsync.
http://subsynct.googlecode.com/files/Settings-new.JPG
As shown in the figure above, once you browse to ‘svnserve.exe’ inside your Subversion folder, you can start SvnServe by clicking on the Start button. After you start the red dot will change to green as shown:
You can click the Update button to save your settings for future use. Once you have SvnServe running, you can use Subsync to sync folders over a network. If you wish to stop SvnServe, simply click on the Stop button.
Managing an existing sync
Click on the sync tab at the upper right hand corner of the toolbar. The window below should now show the list of existing sync tasks available, as shown in the screenshot. Only 6 jobs will be shown on a single page, you may click Back or Next to find the job you desire. Once you found it, simply click on it.
The left menu bar should now display information regarding the sync, together with options to sync, delete the sync, or to perform a time travel (Backup traversal). Simply choose an action and follow the instructions, if any.
Time Travel
If you choose to perform a time-travel, all you have to do next would be to choose the revision that you would like to travel back (or forth) to.
Exclude
If you choose to exclude certain files from your sync, you can click on the ‘Exclude’ button in the Sync. Now you can simply uncheck the files/folders you wish to exclude. Click the ‘Ok’ button to set your filters.