Revision: 78311
          http://sourceforge.net/p/brlcad/code/78311
Author:   starseeker
Date:     2021-02-23 16:50:58 +0000 (Tue, 23 Feb 2021)
Log Message:
-----------
Start forming script into something that can process a file...

Modified Paths:
--------------
    brlcad/trunk/misc/repoconv/sha1_to_uniqkey.sh

Modified: brlcad/trunk/misc/repoconv/sha1_to_uniqkey.sh
===================================================================
--- brlcad/trunk/misc/repoconv/sha1_to_uniqkey.sh       2021-02-23 16:07:16 UTC 
(rev 78310)
+++ brlcad/trunk/misc/repoconv/sha1_to_uniqkey.sh       2021-02-23 16:50:58 UTC 
(rev 78311)
@@ -1,32 +1,78 @@
 #!/bin/bash
+
+set -e
+
+CWD=$(pwd)
+
+if [ "$#" -ne "4" ]
+then
+       echo "sha1_update old_repo new_repo input_file output_file"
+       exit 1
+fi
+old_repo=$1
+new_repo=$2
+input_file=$CWD/$3
+output_file=$4
+
+if [ ! -d $old_repo ]
+then
+       echo "$old_repo does not exist"
+       exit 1
+fi
+if [ ! -d $new_repo ]
+then
+       echo "$new_repo does not exist"
+       exit 1
+fi
+if [ ! -f $input_file ]
+then
+       input_file=$3
+       if [ ! -f $input_file ]
+       then
+               echo "$input_file does not exist"
+               exit 1
+       fi
+fi
+if [ -f $output_file ]
+then
+       echo "$output_file already exists"
+       exit 1
+fi
+
+
+cd $old_repo
+
 rm -f sha1s_orig ukeys nkeys mapped_keys
 while read p; do
   SHA1=$(echo "$p" | awk -F';' '{print $1}')
   if [ "$SHA1" != "" ]
   then
-         echo $SHA1 >> sha1s_orig
+         echo $SHA1 >> $CWD/sha1s_orig
 
          TSMP=$(git log -1 --pretty=format:"%ct%n" $SHA1)
 
          # https://stackoverflow.com/a/7132381
-         git branch -a --contains $SHA1 | grep -v remote | sort | uniq |sed -e 
's/\*//'|sed -e 's/ //g' > branchtmp
-         BMD5=$(md5sum branchtmp |awk '{print $1}')
-         rm branchtmp
+         git branch -a --contains $SHA1 | grep -v remote | sort | uniq |sed -e 
's/\*//'|sed -e 's/ //g' > $CWD/branchtmp
+         BMD5=$(md5sum $CWD/branchtmp |awk '{print $1}')
+         rm $CWD/branchtmp
 
-         git diff --raw $SHA1^ $SHA1 > keytmp
-         DIFFKEY=$(md5sum keytmp |awk '{print $1}')
-         rm keytmp
+         git diff --raw $SHA1^ $SHA1 > $CWD/keytmp
+         DIFFKEY=$(md5sum $CWD/keytmp |awk '{print $1}')
+         rm $CWD/keytmp
 
          echo "SHA1: $SHA1"
          echo "Timestamp: $TSMP"
          echo "Branches MD5: $BMD5"
          echo "Diff MD5: $DIFFKEY"
-         echo "$TSMP;$BMD5;$DIFFKEY" >> ukeys
+         echo "$TSMP;$BMD5;$DIFFKEY" >> $CWD/ukeys
   fi
-done < $1
+  echo "" >> $CWD/ukeys
+done < $input_file
 
+cd $new_repo
+
 echo ""
-echo "Remapping:"
+echo "Mapping from $old_repo SHA1 keys to $new_repo SHA1 keys:"
 echo ""
 
 while read p; do
@@ -33,33 +79,33 @@
   TSMP=$(echo "$p" | awk -F';' '{print $1}')
   BMD5=$(echo "$p" | awk -F';' '{print $2}')
   DIFFKEY=$(echo "$p" | awk -F';' '{print $3}')
+  pwd
   echo "Searching for: $TSMP   $BMD5   $DIFFKEY"
-  git log --all --since $TSMP --until $TSMP --pretty=format:"%H" > nkeys
-  echo "" >> nkeys
-  echo "nkeys:"
-  cat nkeys
-  echo ""
+  git log --all --since $TSMP --until $TSMP --pretty=format:"%H" > $CWD/nkeys
+  echo "" >> $CWD/nkeys
   while read d; do
          CSHA1=$d
          echo "        CSHA1: $CSHA1"
 
-         git branch -a --contains $CSHA1 | grep -v remote | sort | uniq |sed 
-e 's/\*//'|sed -e 's/ //g' > branchtmp
-         NBMD5=$(md5sum branchtmp |awk '{print $1}')
+         git branch -a --contains $CSHA1 | grep -v remote | sort | uniq |sed 
-e 's/\*//'|sed -e 's/ //g' > $CWD/branchtmp
+         NBMD5=$(md5sum $CWD/branchtmp |awk '{print $1}')
          echo "        NBMD5: $NBMD5"
-         rm branchtmp
+         rm $CWD/branchtmp
 
          if [ "$BMD5" == "$NBMD5" ]
          then
-                 git diff --raw $CSHA1^ $CSHA1 > keytmp
-                 NDIFFKEY=$(md5sum keytmp |awk '{print $1}')
+                 git diff --raw $CSHA1^ $CSHA1 > $CWD/keytmp
+                 NDIFFKEY=$(md5sum $CWD/keytmp |awk '{print $1}')
                  echo "        NDIFFKEY: $NDIFFKEY"
                  if [ "$NDIFFKEY" == "$DIFFKEY" ]
                  then
                          echo "        MATCH"
-                         echo $d >> mapped_keys
+                         echo $d >> $CWD/mapped_keys
                  fi
-                 rm keytmp
+                 rm $CWD/keytmp
          fi
-  done < nkeys
-  rm nkeys
-done < ukeys
+  done < $CWD/nkeys
+  rm $CWD/nkeys
+done < $CWD/ukeys
+
+cd $CWD

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
brlcad-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to