Revision: 78310 http://sourceforge.net/p/brlcad/code/78310 Author: starseeker Date: 2021-02-23 16:07:16 +0000 (Tue, 23 Feb 2021) Log Message: ----------- Use the branch structure as well in this comparison - it's conceivable timestamp and diff contents match but the branch inclusions don't.
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 15:13:59 UTC (rev 78309) +++ brlcad/trunk/misc/repoconv/sha1_to_uniqkey.sh 2021-02-23 16:07:16 UTC (rev 78310) @@ -4,15 +4,24 @@ SHA1=$(echo "$p" | awk -F';' '{print $1}') if [ "$SHA1" != "" ] then - echo "SHA1: $SHA1" echo $SHA1 >> sha1s_orig + TSMP=$(git log -1 --pretty=format:"%ct%n" $SHA1) - echo "Timestamp: $TSMP" + + # 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 diff --raw $SHA1^ $SHA1 > keytmp DIFFKEY=$(md5sum keytmp |awk '{print $1}') rm keytmp - echo "Diffkey: $DIFFKEY" - echo "$TSMP;$DIFFKEY" >> ukeys + + echo "SHA1: $SHA1" + echo "Timestamp: $TSMP" + echo "Branches MD5: $BMD5" + echo "Diff MD5: $DIFFKEY" + echo "$TSMP;$BMD5;$DIFFKEY" >> ukeys fi done < $1 @@ -22,8 +31,9 @@ while read p; do TSMP=$(echo "$p" | awk -F';' '{print $1}') - DIFFKEY=$(echo "$p" | awk -F';' '{print $2}') - echo "$p -> $TSMP $DIFFKEY" + BMD5=$(echo "$p" | awk -F';' '{print $2}') + DIFFKEY=$(echo "$p" | awk -F';' '{print $3}') + echo "Searching for: $TSMP $BMD5 $DIFFKEY" git log --all --since $TSMP --until $TSMP --pretty=format:"%H" > nkeys echo "" >> nkeys echo "nkeys:" @@ -32,15 +42,24 @@ while read d; do CSHA1=$d echo " CSHA1: $CSHA1" - git diff --raw $CSHA1^ $CSHA1 > keytmp - NDIFFKEY=$(md5sum keytmp |awk '{print $1}') - echo " NDIFFKEY: $NDIFFKEY" - if [ "$NDIFFKEY" == "$DIFFKEY" ] + + git branch -a --contains $CSHA1 | grep -v remote | sort | uniq |sed -e 's/\*//'|sed -e 's/ //g' > branchtmp + NBMD5=$(md5sum branchtmp |awk '{print $1}') + echo " NBMD5: $NBMD5" + rm branchtmp + + if [ "$BMD5" == "$NBMD5" ] then - echo " MATCH" - echo $d >> mapped_keys + git diff --raw $CSHA1^ $CSHA1 > keytmp + NDIFFKEY=$(md5sum keytmp |awk '{print $1}') + echo " NDIFFKEY: $NDIFFKEY" + if [ "$NDIFFKEY" == "$DIFFKEY" ] + then + echo " MATCH" + echo $d >> mapped_keys + fi + rm keytmp fi - rm keytmp done < nkeys rm nkeys done < ukeys 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