当你在项目中工作时,至少是我自己,无论你是否使用IDE(如eclipse或netbeans),你都要更新源文件,创建目录,创建新文件,删除一些文件或重命名它们。 (我不想花时间为每个文件发出svn命令,如果其中一些文件可能还不是最终文件,那就更多了。)
在某个时刻,你认为你已经得到了它:好吧,这就是我想保留并保存到存储库中的内容。
是否有任何单个svn命令说“现在存储工作项目”? (这可能意味着一大堆添加和删除(重命名=使用svn删除+添加的本地副本)并递归到目录中。)
如果没有(我猜),任何shell脚本都可以执行此任务吗? (基于svn状态,递归地为每个子文件夹)。
更新
有没有maven插件可以做到这一点?
感谢。
答案 0 :(得分:0)
我认为这可以完成任务:
if [ $# != 1 ]
then
echo "usage: doSVNsnapshot.sh DIR"
exit 0
fi
ROOT=$1
for i in `find ${ROOT} -type d \! -path "*.svn*" `
do
echo
echo "--------------------------"
( cd $i ;
echo $i
echo "--------------------------"
svn status | awk '
/^[!]/ { system("svn rm " $2) }
/^[?]/ { system("svn add " $2) }
'
)
echo
done