Fix submodule checkout substitution for POSIX shells

The substitution used in the submodule checkout command does not work when `/bin/sh` is a real POSIX shell (such as pdksh.) This change fixes the substitution so it will work with all shells.
It's not even valid syntax in pdksh

```
$ echo $KSH_VERSION  
@(#)PD KSH v5.2.14 99/07/13.2
$ a=/foo/bar; echo ${a/foo/}
sh: : bad substitution
```

Of course it works fine in bash.
```
$ echo $BASH_VERSION
3.2.51(1)-release
$ a=/foo/bar; echo ${a/foo/}
//bar
```

This is definitely an edge case but it annoys _me_ enough to fix.