Subversion: How do you avoid forgetting to check things?

Working on three different computers in two different places, in projects that are in subversive activities, from time to time I forget to check the material in one place so that I can’t work with the latest code when I want to continue working in the project in another place.

I am sure others had similar problems.

What can I do to avoid this problem? Tools that help? Notifications that I can customize?

I am using Visual Studio 2008 and TortoiseSVN on a Windows7 PC.

+6
windows svn visual-studio tortoisesvn
source share
10 answers

Use a tool, such as VisualSVN , to show which files have been changed in the solution explorer so you don't forget to commit them:

VisualSVN status icons in Solution Explorer

+7
source share

A simple solution is to right-click on the top level of the project and click commit. The turtle shows you the entire project, including the "non-version."

It takes a little discipline when setting up the source tree. For example, if you mix binary output files with source code, this makes the task difficult. Also, make sure that you do not have ignored directories that contain source code.

+6
source share

Daily builds.
A batch file (or its equivalent) that is checked in a new directory and builds (and in an ideal world passes unit tests) - if it is not built, you skipped somethign.

+6
source share

I don’t have a magic wand to offer, only the mantra "performs earlier, perform often"; in addition, avoiding such accidents or at least minimizing their impact when they occur, which also gives other advantages (more subtle rollback if, for example, a change requires restoration). This may require a branch if it is believed that the trunk always contains a “golden code”, so you don’t want to make half-baked changes (and svn just doesn’t make branching and merging painless, sigh) - this is (among other advantages of distributed VCS) one of the reasons why I started to switch from subversion to mercurial (aka hg) to open source projects and / or to personal projects where I can name pictures in this question!)

+5
source share

Remote control of other machines (possibly via VPN) so that you can get the code in remote working directories, even if you forget to check it.

And / or automatic backup of your working directories.

+2
source share

Get yourself into a routine.

  First thing in the office - do an update. 
 Last thing in the office - do a commit (if required). 

Of course, you should update / fix during the day (for example, during verification), but with a minimum minimum do it.

+2
source share

Having forgotten to register at all, if possible, I will log out of the system through some script that will first call you if the work has not been verified. Or through the icon, by clicking on the project folder, so TortoiseSVN will show you a red exclamation mark.

Forgetting to add new files to the registry, I use this batch file:

svn st svn ci -m %1 --username "russell.wallace" 

So, as soon as I commit with the missing new files, I get a notification about this and can immediately monitor another message that adds them.

+2
source share

Does Crohn's task whine with you every night?

+1
source share

What I do with Tortoise always has one “Check for Changes” window open and regularly click on the “Update” button. It would be very bad to rush, which will make me disconnect without first checking all open windows / applications for unsaved data.

It is also good against forgetting to add things, BTW, since you can customize this window to show all inexhaustible unnecessary things.

+1
source share

I use git-prompt.sh to track the status of files and branches. It also works with SVN.

0
source share

All Articles