Skip to content

Instantly share code, notes, and snippets.

@pradyumnac
Created July 7, 2023 09:17
Show Gist options
  • Save pradyumnac/9f46118973bba3f20bef66a4c1b248f6 to your computer and use it in GitHub Desktop.
Save pradyumnac/9f46118973bba3f20bef66a4c1b248f6 to your computer and use it in GitHub Desktop.
Zip all github repo subfolders into an export sub folder in same parent directory
#!/usr/bin/env bash
# Compress all git folders responscing gitignore rules
set -e
# Export folder
export_folder=$(pwd)/export
mkdir -p $export_folder
echo "Exporting all git subfolders for $(pwd) to tar.gz files into $export_folder"
# Get all git folders
folders=$(ls)
# Compress all git folders
for folder_name in $folders; do
# verify that this is a git folder
if [ ! -d "$(pwd)/$folder_name/.git" ]; then
echo "Skipping $folder_name"
continue
fi
# get folder name
echo "Exporting $folder_name"
cd "$folder_name"
git archive --format=tar.gz --output=$export_folder/"$folder_name".tar.gz HEAD
cd -
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment