Git clone from bash script

bash, git, git-clone, ssh

Solution

You mean `git clone "$repository" "$localFolder"`, I'd hope?

Running `git clone $repository" "$localFolder` is something quite different:

- Because neither variable is within double quotes, their contents are string-split and glob-expanded; thus, if they contained whitespace (generally, characters within `$IFS`), they could become multiple arguments, and if they contained globs (`*`, `[...]`, etc), those arguments could be replaced with filenames (or simply removed from the generated argument list, if the `nullglob` shell option is enabled)

- Because the space between the two arguments is quoted, they are combined into a single argument before being passed to `git`.

So, for the values you gave, what this script runs would be:

git clone "git@github.xxxx.com:blablabla/reponame.git /Users/myname/dev/myfolder"

...which is quite different from

git clone git@github.xxxx.com:blablabla/reponame.git /Users/myname/dev/myfolder

...as it is giving the `/Users/myname/dev/myfolder` path as part of the URL.

Problem

I am trying to automate my interactions with Git building a script and I am having the following problem. This works from the command line: ``` git clone git@github.xxxx.com:blablabla/reponame.git /Users/myname/dev/myfolder ``` And now I would like to do the same, but from my script. I have the following: ``` #/bin/bash repository="git@github.xxxx.com:blablabla/reponame.git" localFolder="/Users/myname/dev/myfolder" git clone $repository" "$localFolder ``` that gives me this error GitHub SSH access is temporarily unavailable (0x09). fatal: The remote end hung up unexpectedly Any light on this will be much appreciated

Original source