Reputation: 313
I'm trying to make it so that when I do svn commit I do not mistakenly forget to svn add unversioned files. It is simply impossible for me to remember this BEFORE the build farm explodes in failures, so I need this UI to inform me that new code files were added.
I've gotten it to be pretty close to useful in my code base by ignoring:
*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store *.bak *.idb *.log *.obj *.pdb *.res *.tlog *.manifest *.res *.aps *.ipch *.lastbuildstate *.pch *.sbr *.sdf *.suo *.tlh *.unsuccessfulbuild *.tli
Unfortunately the window is still polluted with countless folder paths to unversioned directories created by the compiler (i.e. ipch folders) and these entries make it very annoying to spot the missed code files.
I see a UI option to select all Files and Folders individually, but no option to show/hide Files and Folders individually.
Is there any easier way to see the results of versioned changes AND unversioned CODE FILE changes? i.e. specifically .h, .c, .hpp, and .cpp?
Upvotes: 1
Views: 563
Reputation: 52689
If you add */ipch/*
then it will show you the root ipch folder, but ignore all subfolders under it, which is usually a reasonable trade-off between knowing it exists while ignoring all the clutter of its contents.
You can, of course, just add ipch
by itself to the ignore entry and that wil ignore the top level ipch as well as all its contents too.
Upvotes: 0
Reputation: 124804
Are your build products in a separate directory, or are they mixed together with source code? Usually they should be in a separate directory, for example bin
, build
, target
, or similar. In that case you can set the svn:ignore
property on the parent directory level. For example if you have this kind of directory layout:
proj
├── src/
└── build/
Then inside proj
dir, run this command:
svn pedit svn:ignore .
append a line with "build", and save and exit the editor. If you don't like the command line, your IDE should have a GUI for the equivalent.
If you have many build
directories in your project then the svn:global-ignores
property can be useful, but you need Subversion 1.8 for that.
Upvotes: 1