Yes, it's a git repo. Git pulls the full repo locally and you can push it to another remote.
A git repo can have multiple remotes. See ref on remotes here.
In vsonline, log in, create a new project, select git as the source control. go to the code hub. It will give you instructions for pushing an existing repo (that you cloned from github). If you have an existing vsonline, project, you can add existing repos by going to the admin area (gear upper right, version control tab).
Something like (proj == repo):
https://{acctname}.visualstudio.com/DefaultCollection/_git/{projname}
If it's another repo in the same project it will be something like:
https://{acctname}.visualstudio.com/DefaultCollection/{projname}/_git/{reponame}
Now, you can add a remote for you existing repo:
git remote add vsonline {urlHere}
Now, you can push the repo to vsonline using git push {remoteName} {branch}
git push vsonline master
Now you have a repo with multiple remotes. You can delete the remotes or keep pushing changes to both.
If vsonline will be your only remote, convention is to call it origin (primary remote)