Понимание git: подключите ветку к удаленному репозиторию

У меня есть репозиторий на github, скажем, testrepo. Теперь я хотел бы создать локальный репозиторийrepo это имеет одну веткуorigin-master где я хочу иметь возможность редактировать вещи из хранилища.

repo/origin-master  <-------->  origin/master

Клонирование работает отлично:

mkdir repo && cd repo && git init 
# not necessary of course:
echo "master" > master && git add master && git ci -m "master"
git remote add origin [email protected]:<username>/testrepo.git
git fetch origin
git branch --set-upstream origin-master origin/master 
git checkout origin-master
# create a new file:
echo "for origin-master" > orig-master && git add orig-master && git ci -m "orig-master"

но

git push origin 
To [email protected]:<username>/testrepo.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to '[email protected]:<username>/testrepo.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again.  See the
'Note about fast-forwards' section of 'git push --help' for details.

Как я могу сказать git, что если я хочу нажать на источник, я хочу нажать на локальную веткуorigin-master вorigin/master?

Ответы на вопрос(3)

Ваш ответ на вопрос