Question: Is there a simple way to export a single file from different git branch (local or remote) without checking out that branch?

Answer: 
You can do the following:

```
 git show experiment:docs/README.txt > /tmp/exported-README.txt

```

... for a local branch `experiment`. For a branch that's in the repository you're referring to with the remote `origin`, you can do the following, similarly:

```
 git fetch origin
 git show origin/other-experiment:docs/README.txt > /tmp/exported-README-remote.txt

```
You can choose to check out a specific file from a reference:

`git checkout branch_or_hash path/to/file`

The current branch will stay the same, but the other file will also be present. It will also be added to the index.