From BlenderWiki

Jump to: navigation, search
Note: This is an archived version of the Blender Developer Wiki. The current and active wiki is available on wiki.blender.org.
replaced=1
 
while [[ $replaced = 1 ]]; do
 
replaced=0
 
for c in $(git rev-list mybranch --grep "git-svn-id"); do
    git --no-replace-objects merge-base --is-ancestor $c master || continue
 
    date=$(git show -s $c --format="format:%aD" 2>/dev/null)
    log=$(git show -s $c --format="format:%B" | head -n 1 2>/dev/null)
 
    [[ -z $date ]] && break
    echo "Found commit: $date - $log"
 
    other=$(git rev-list -1 blender/master \
                         -F --grep="$log" \
                         --before="$date" \
                         --after="$date")
 
    [[ -z $other ]] && break
    echo "Found replacement"
 
    for x in $c $(git rev-list --all \
                         -F --grep="$log" \
                         --before="$date" \
                         --after="$date"); do
        [[ $x == $other ]] || echo "Replacing $x with $other"
        [[ $x == $other ]] || git replace -f $x $other
    done
 
    replaced=1
    break
done
done