error: src refspec master does not match any
Это означает, что у вас нет локальной ветки с именем master. src
будучи "источником", вашим локальным хранилищем. Я предполагаю, что вы создали ветку, отличную от master.
git push origin master
не означает pu sh текущую ветку для master источника. Это говорит pu sh от вашего местного мастера до мастера происхождения. У вас нет локальной ветки master.
Как это случилось? Если мы клонируем пустой репозиторий, может показаться, что у нас есть основная ветвь ...
$ git init --bare upstream
Initialized empty Git repository in /Users/schwern/tmp/upstream/
$ git clone upstream test.git
Cloning into 'test.git'...
warning: You appear to have cloned an empty repository.
done.
$ cd test.git
$ git status
On branch master
No commits yet
nothing to commit (create/copy files and use "git add" to track)
Но мы этого не делаем.
$ git show-ref
$ git branch -v
$ git push origin master
error: src refspec master does not match any
error: failed to push some refs to '/Users/schwern/tmp/upstream'
Мы должны сделать коммит мастеру чтобы он появился.
Если вы немедленно проверили новую ветку, мастер не будет существовать.
См. этот ответ для более подробной информации .
Если вы хотите указать sh текущую ветвь к источнику, используйте git push origin
. Если вы хотите добавить sh текущую ветвь к мастеру источника, используйте полный синтаксис: git push origin +your-branch:master
.