Do not error out when fetching from second remote

In `git_remote_update_tips()`, it prepares `FETCH_HEAD` file. If `HEAD` 's remote is not the same as the fetching remote, it raised an error.

This pull request fixes the issue.
The error here is that we're looking up the upstream branch of the current one regardless of whether it's relevant to what we want to do. We only need to run the code in the function you modified if we are fetching from the upstream remote. So we need to check what the upstream remote is. Something a bit like

```
git_repository_config_snapshot(&config, repo);
git_repository_get_string(&upstream_remote, config, "branch.<foo>.remote");
if (strcmp(git_remote_name(remote), upstream_remote))
    return 0;
```

We already exit early in the function if we see that we're on an unborn branch. This is a similar situation. We want to simply return 0 instead of doing the work.