I like to keep an archive of my code on a monthly basis. I wrote a small bash script to create zip out of my multi module Java projects. It gets the job done and can be improved to include resources and test folders as well. As of now I am only interested in the Java code zip backup.
!/bin/bash
if [ -d "combined" ]; then
echo "Removing existing zip files in combined .."
rm combined/*.zip
else
echo "Creating combined folder.."
mkdir combined
fi
for d in */ ; do
if [ -d "$d/src/main/java" ]; then
var="$(echo $d | sed 's/.$//')"
echo "Processing $var .."
cd $d/src/main/java
zip -r ../../../../combined/$var.zip com
cd ../../../..
else
echo "Ignoring .. $d"
fi
done