Find new, modified and unversioned Subversion files on Windows
Nobody likes to break the build. When I do it, it is often because I forgot to add a file to the repository. The build server will not get it and the build will break.
This Windows batch file will parse Subversion’s
svn up output and show you what files were modified, but also what files should be added.
It looks for C++, C, H, PHP, Python, Java and then some. You can easily add your own to the list.
To use simply call localfiles.bat from any versionned directory. Anything you add to the command line will be passed along to
svn up. Try these variations :
to see potential update conflicts.
works, you can run the command from anywhere
or any other Subversion command you can think of
In the sample output (below) you will see
New Source Files are source that were added (localy) but never comitted.
Modified Source Files are source that are under source control and were modified locally.
Unversioned Source Files are source that probably should be under source control.
Each file is listed, with (no source file) if it looks ok.
$ localfiles.bat C:\Users\Guillaume\src\Projects\aucun.selfserve Gathering data... ====================================== New sourcefiles ====================================== (none found) ====================================== Modified sourcefiles ====================================== M C:\Users\Guillaume\src\Projects\aucun.selfserve\GINA\SecurityHelper.cpp M C:\Users\Guillaume\src\Projects\aucun.selfserve\GINA\loggedout_dlg.cpp M C:\Users\Guillaume\src\Projects\aucun.selfserve\common\Trace.c M C:\Users\Guillaume\src\Projects\aucun.selfserve\GINA\GinaHook.c ====================================== Unversioned files ====================================== ? C:\Users\Guillaume\src\Projects\aucun.selfserve\GINA\StaticPrompt.cpp ? C:\Users\Guillaume\src\Projects\aucun.selfserve\shellie\shellie_p.c ? C:\Users\Guillaume\src\Projects\aucun.selfserve\shellie\dlldata.c ? C:\Users\Guillaume\src\Projects\aucun.selfserve\shellie\shellie_i.c ? C:\Users\Guillaume\src\Projects\aucun.selfserve\shellie\shellie.h
Here is the file. I gave it a txt extension, in case you are behing a paranoïac corporate proxy.