 <p>Yes. You are doing the correct thing. Thats the short answer.</p> <p>However, if you are new to git, you might get caught or stuck, so I'll walk you through the process here.</p> <p>If you have not yet committed your changes you can do the following on the remote:</p> <pre><code>git stash git checkout -b my-new-branch-name master git stash apply git add . git commit -m 'committing new changes' git push origin my-new-branch-name </code></pre> <p>The git-stash command just stores your changes temporarily so you can checkout safely, and then git-stash apply reapplies them. This only works for uncommitted changes.</p> <p>If you have already committed your changes to master, you will want to simply create the branch the same way your original post says, but then you probably also want to remove your changes from the local master branch.</p> <pre><code>git branch my-new-branch-name master git reset --hard origin/master </code></pre> <p>This will create your new branch with the new commits, and then reset your local master branch to whatever was in the remote master branch.</p> <p>Now with that done, you can go to your local machine (or any other clone of the same repo), and pull down that branch.</p> <pre><code>git fetch git checkout my-new-branch-name </code></pre>