61 lines
2.4 KiB
Bash
Executable file
61 lines
2.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Check if the script is run from the root of the PasVulkan GIT repository by checking if the .git directory is present
|
|
if [ ! -d ".git" ]; then
|
|
echo "This script must be run from the root of the PasVulkan GIT repository"
|
|
exit 1
|
|
fi
|
|
|
|
# Check if the script is run from the original author by checking if the home directory /home/bero is present, which is the home directory of the original author
|
|
if [ ! -d "/home/bero" ]; then
|
|
echo "This script must be run only from the original author"
|
|
exit 1
|
|
fi
|
|
|
|
read -p "Enter commit message (or leave blank for default): " commit_message
|
|
|
|
if [ -z "$commit_message" ]; then
|
|
commit_message="More work"
|
|
fi
|
|
|
|
# Save the current directory in a variable
|
|
OLD_DIR="$(pwd)"
|
|
|
|
# Copy modified files from the kraft submodule to the real directory of the kraft GIT repository
|
|
cp -f externals/kraft/README.md ../kraft/README.md
|
|
cp -f externals/kraft/src/kraft.pas ../kraft/src/kraft.pas
|
|
cp -f externals/kraft/src/KraftArcadeCarPhysics.pas ../kraft/src/KraftArcadeCarPhysics.pas
|
|
cp -f externals/kraft/src/KraftRayCastVehicle.pas ../kraft/src/KraftRayCastVehicle.pas
|
|
cp -f externals/kraft/sandbox/UnitDemo*.pas ../kraft/sandbox/
|
|
cp -f externals/kraft/sandbox/UnitFormMain.pas ../kraft/sandbox/UnitFormMain.pas
|
|
cp -f externals/kraft/sandbox/UnitFormMain.lfm ../kraft/sandbox/UnitFormMain.lfm
|
|
cp -f externals/kraft/sandbox/kraftsandbox.lpi ../kraft/sandbox/kraftsandbox.lpi
|
|
cp -f externals/kraft/sandbox/kraftsandbox.lpr ../kraft/sandbox/kraftsandbox.lpr
|
|
|
|
# Clean the kraft submodule from the local changes
|
|
cd externals/kraft
|
|
git stash # Stash the local changes
|
|
git stash drop # Drop the stashed local changes
|
|
git pull origin master # For ensuring that the local kraft submodule is on the right branch
|
|
cd "${OLD_DIR}"
|
|
|
|
# Commit the changes in the kraft GIT repository
|
|
cd ../kraft
|
|
git add src/kraft.pas src/KraftArcadeCarPhysics.pas src/KraftRayCastVehicle.pas sandbox/UnitDemo*.pas sandbox/UnitFormMain.pas sandbox/UnitFormMain.lfm sandbox/kraftsandbox.lpi sandbox/kraftsandbox.lpr README.md
|
|
git commit -a -m "$commit_message"
|
|
git push
|
|
cd "${OLD_DIR}"
|
|
|
|
# Update all submodules including the kraft submodule for the lastest versions
|
|
git submodule update --remote --recursive
|
|
|
|
# Commit the changes in the main PasVulkan GIT repository
|
|
git commit -am "Updated submodules"
|
|
git push
|
|
|
|
# Switch to the old directory back
|
|
cd "${OLD_DIR}"
|
|
|
|
# Exit with success
|
|
exit 0
|