diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2024-08-05 20:01:48 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2024-08-05 20:01:48 -0300 |
commit | 19664d4b42fb8bfa37ef67f7224ea49a28a844ab (patch) | |
tree | ec758a648643de846717a1a6854eefe3dc927763 /sup | |
parent | b2bd615615eba504a04c851769e138b554b97688 (diff) | |
download | utils-git-19664d4b42fb8bfa37ef67f7224ea49a28a844ab.tar.gz utils-git-19664d4b42fb8bfa37ef67f7224ea49a28a844ab.tar.bz2 |
Fix: rename scripts to something more meaningful to others
Diffstat (limited to 'sup')
l---------[-rwxr-xr-x] | sup | 85 |
1 files changed, 1 insertions, 84 deletions
@@ -1,84 +1 @@ -#!/bin/bash -# -# Commit submodule changes -# -# Usage: -# -# 1. From a submodule folder: -# -# sup # go the upward repo and commit -# -# 2. From the top-level git repo: -# -# sup <submodule> -# -# Usage in an alternative design: -# -# 1. From a submodule folder: -# -# sup # go the upward repo and commit -# -# 2. From the top-level git repo: -# -# sup # detect changed submodules -# sup <submodule1> [..<submoduleN>] -# - -# Parameters -DIRNAME="`dirname $0`" -BASENAME="`basename $0`" -PROJECT="$1" -GIT="hit" - -# Check each file at the the submodule registry -#function sup_registry { -# $GIT status --short | grep -v "??" | awk '{ print $2 }' | while read module; do -# if grep -q "\[submodule \"$module\"\]" .gitmodules; then -# true -# fi -# done -#} - -# Check if it is a git repository, and wheter we're in the top of it -if [ ! -d ".git" ]; then - echo "$BASENAME: not a git repository, or not in the top-level of that repository" - exit 1 -fi - -# Remove trailing slash from project name -PROJECT="`echo "$PROJECT" | sed -e 's|/$||'`" - -# Check if param is a project -if [ ! -z "$PROJECT" ]; then - # Check if project is a registered submodule - if ! grep -q "\[submodule \"$PROJECT\"\]" .gitmodules; then - echo "$BASENAME: not a submodule: $PROJECT" - exit 1 - fi - - # Check if it has changes to be commited - #if ! $GIT status --short $PROJECT | grep -q "^[AM]"; then - # echo "$BASENAME: not changes to be commited for $PROJECT" - # exit 1 - #fi - - # Work with cached version only - #COMMIT="`$GIT diff --cached $PROJECT | grep '^\+Subproject commit ' | cut -d ' ' -f 3`" - #LOG="`cd $PROJECT &> /dev/null && git log -1 --oneline $COMMIT`" - - # Always work with the latest commit - $GIT add $PROJECT - LOG="`cd $PROJECT &> /dev/null && git log -1 --oneline`" - - MESSAGE="Updates $PROJECT: $LOG" - $DIRNAME/commit $MESSAGE -else - # Get log - LOG="`git log -1 --oneline`" - BASE="$(basename `pwd`)" - MESSAGE="Updates $BASE: $LOG" - - # Got upward and commit - #( cd .. &> /dev/null && $GIT add $BASE && $DIRNAME/commit "$MESSAGE" ) - ( cd .. &> /dev/null && $GIT add -f $BASE && $DIRNAME/commit "$MESSAGE" ) -fi +scommit
\ No newline at end of file |