Update git refs

1) Update remoteRefs whenever fetched.
2) Request remote_refs async on "Git Branch" action. Local copy is returned immediately.

fixes #2346 

@dinhviethoa PTAL thanks.

I'm not sure why you're not waiting for the response of async request?
Also, if there's an pending async request, it probably needs some notification to let API user know that additional info is available.

I think you should separate this calls into two separate API calls.

- One to get the cache remote branch names
- One to update the remote branch names from the server