.settings 文件夹和 .project 文件当前处于版本控制之下。我需要在它们上添加 svn:ignore 属性。当我们只有少数开发人员时,我总是这样做:
- 在本地临时备份它们
- 在本地删除它们并提交(或远程删除它们并更新)
- 从备份本地重新添加它们(步骤#1)
- 添加 svn:ignore 属性并提交
问题是其他开发者在更新之前也必须备份他们的文件,因为他们的本地文件在更新时会被删除。任何其他限制较少的解决方案,或者我真的必须发送“请在更新前备份!” 电子邮件?
.settings 文件夹和 .project 文件当前处于版本控制之下。我需要在它们上添加 svn:ignore 属性。当我们只有少数开发人员时,我总是这样做:
问题是其他开发者在更新之前也必须备份他们的文件,因为他们的本地文件在更新时会被删除。任何其他限制较少的解决方案,或者我真的必须发送“请在更新前备份!” 电子邮件?
您应该svn rm --keep-local
改用。
如果你在 Unix 上,你可以测试一下:
find . -name .project -exec sh -c 'svn info "{}"' \; -a \
-execdir bash -c 'svn -q propset svn:ignore -F <((svn propget svn:ignore;\
echo .project) | sort -u) .' \; -a \
-execdir svn delete --keep-local {} \;
.project
文件并检查它是否有版本。sort -u
防止重复--okdir
改用注意:您只能在最后提交,因为它是相同的操作(即“清理属性”)。
FWIW 不要失去希望,svn 1.8 包含继承的属性(http://subversion.apache.org/docs/release-notes/1.8.html#iprops)