Question: I've cloned a remote repository which has several branches, worked on one of those branches, committed the changes and pushed. 
After a time interval during which colleagues have modified the remote repository further (and during which I've possibly forgotten how to use git), I need to make more changes. I don't need to keep any local changes.
First I try to bring my local repo up to date by doing

```
git fetch --all

```

then I try to switch to the required branch by 

```
git checkout -f branchname

```

but git says

```
Your branch is behind 'origin/branchname' by 85 commits, and can be fast-forwarded.

```

So I take that to mean that my local branch is stuck somewhere behind the commit corresponding to the equivalent remote branch, despite doing a fetch that I hoped would make my repo equal to the remote one. What's the clearest and most straightforward way to do this? I could start with a new clone, but that seems a bit crude.

Answer: 
After `git checkout -f branchname`, do `git pull origin branchname`
I use [git up](https://github.com/aanand/git-up) for this. Apart from updating all your local branches, it will also stage and unstage any local changes you have. Saved me quite a few key strokes since I've been using it.