etc-update searches ".svn" and ".cvs" directories, but since these hold things not intended for updates etc-update should ignore them. Maybe there are others to be ignored for other revision control systems or deployment platforms. CONFIG_PROTECT is not adequate to keep etc-update out of ".svn" or ".cvs". In my opinion it would be best to have an additional environment variable giving a list of directories files to be ignored. Ideally one which allows to set patterns. It may be enough to set find_opts="-iname ._cfg????_*" to find_opts="\( -iname .svn -prune \) -o -iname ._cfg????_*" to make it happen. But it would be more usefull to have it configurable. With a default of ignoring ".svn" and ".cvs". Reproducible: Always Steps to Reproduce: 1. make /etc a svn or cvs checkout 2. 3. Actual Results: ".svn" or ".cvs" is searched for "._cfg????_*" files, but these directories may not be searched at all, since they are used by svn or cvs. Expected Results: ".svn" or ".cvs" directories being ignored.
Not an infra bug. etc-update is part of portage.
wtf is a ".cvs" directory ? cvs uses "CVS" wonder if we can just be like any other tool ... ignore directories that start with a . i dont think anything installs a . dir on purpose ...
This might be related to #164529. But I still don't get what the problem really is (other than cosmetic and possibly in execution time).
Assume people using svn, cvs, or others to configure systems. Some centralized system management software does the same. etc-update should ignore repository files.
Well, yes, I'm also using Subversion for /etc, but I don't have any problem with etc-update. Could you describe precisely the behavior that's bothering you?
I am having the same problem. I just had the case that etc-update updated a file in a .svn directory (/etc/php/apache2-php5/.svn/text-base/php.ini.svn-base) this messed up my whole subversion history because now subversion was missing a file (the one with the number in front that etc-update normally uses as temporary files), I had to completely wipe all .svn directories below /etc/, delete the old subversion repository and create a new one. the problem probably occurs when subversion starts to track local changes in one of the temporary files. I also agree that we need an option in etc-update.conf. e.g.: # versioning system users # ignore versioning system diectories e.g. .svn for subversion ignore_dirs=".svn"
Created attachment 171777 [details, diff] make etc-update and dispatch-conf ignore hidden directories Both etc-update and dispatch-conf ignore hidden directories, in svn r11927:11929.
This is fixed in 2.2_rc15.