Сообщение 'src refspec master не совпадает ни с одним' при отправке коммитов в Git - PullRequest
2295 голосов
/ 15 ноября 2010

Я клонирую свой репозиторий с:

git clone ssh://xxxxx/xx.git 

Но после того, как я изменю некоторые файлы и add и commit их, я хочу отправить их на сервер:

git add xxx.php
git commit -m "TEST"
git push origin master

Но я получаю сообщение об ошибке:

error: src refspec master does not match any.  
error: failed to push some refs to 'ssh://xxxxx.com/project.git'

Ответы [ 66 ]

1 голос
/ 14 февраля 2018

В моем случае я клонировал репозиторий, но я не переключался на ветку локально

я решил, сделав это

перед внесением изменений в код, вы должны сделать это git checkout branch-name

затем внесите изменения в ваш код

после этого нажмите код для перехода git push -u origin branch-name

1 голос
/ 27 июля 2012

@ Aryo В моем случае мне пришлось использовать полный URL-адрес моего локального git-репозитория, чтобы отправить файл.Сначала я удалил все файлы в текущем каталоге.Созданный README добавил его.Добавил еще немного.Затем я отправил эти файлы и, наконец, отправил их, указав правильный адрес в хранилище.Здесь ваш репозиторий - это имя репозитория на сервере.

rm -rf *

touch README
git add README
touch file1 file2
git add file1 file2

git commit -m "reinitialized files"
git push git@localhost:yourrepository.git master --force
1 голос
/ 24 ноября 2018

Может быть, Github не знает, кто вы.

сначала вы должны запустить: git config --global user.email "you@example.com" git config --global user.name "Your Name"

1 голос
/ 23 апреля 2015

Ошибка из git: ошибка: мастер src refspec не совпадает ни с одним.

исправлено с помощью этого шага: git commit -m "first commit"

прежде чем я побежал: git add

и после того, как я побежал: git push -u origin master

!!!

1 голос
/ 14 декабря 2018

если у вас есть визуальный студийный код

  1. удалить папку .git, если вам не нужны изменения для отслеживания (если да, git stash)
  2. git init
  3. git commit -m "first commit"
  4. git remote add origin https://github.com/YOURusername/YOURrepo.git
  5. с помощью Visual Studio Code UI IDE GOTO управления исходным кодом с левой стороны или (Ctrl + shift + G)
  6. поставить все ваши изменения или часть
  7. зафиксируйте ваши изменения
  8. Синхронизируйте свои изменения с помощью левой нижней кнопки (например, числа или значка облака) Затем Visual Studio попросит вас ввести имя пользователя и пароль

если у вас есть разрешение на репо, вы можете увидеть:

> git push -u origin master
Fatal: AggregateException encountered.
To https://github.com/your_account/yourrepo.git
 * [new branch]      master -> master
> git status -z -u
> git symbolic-ref --short HEAD
> git rev-parse master
> git rev-parse --symbolic-full-name master@{u}
> git rev-list --left-right master...refs/remotes/origin/master
> git for-each-ref --format %(refname) %(objectname) --sort -committerdate
> git remote --verbose
> git show :ionic.config.json
> git check-ignore -z --stdin
1 голос
/ 09 марта 2015

У меня было очень длинное местное название филиала.

git branch -m new_shorter_branch_name

исправил проблему.

1 голос
/ 12 июля 2018

У меня была такая же проблема, и я обнаружил, что я не зафиксировал ни одного файла, поэтому, когда я попытался зафиксировать снова, я получаю это сообщение об ошибке

*** Please tell me who you are.

Run

 git config --global user.email "you@example.com"
 git config --global user.name "Your Name"

 to set your account's default identity.
 Omit --global to set the identity only in this repository.

 fatal: unable to auto-detect email address (got 'USER@WINDOWS-HE6I2CL.(none)')

, тогда все, что я сделал, это добавил свой адрес электронной почты и имяглобально и снова совершил

git commit -m 'Initial commit'

затем нажмите

git push -u origin master

Надеюсь, это поможет

0 голосов
/ 24 сентября 2018

Он не распознает, что у вас есть основная ветка, просто создайте ее и подтвердите снова.

Чтобы создать основную ветку:

git checkout -b master
0 голосов
/ 19 сентября 2012

Ни одно из вышеперечисленных решений не помогло мне, когда я получил ошибку src-refspec.Мой рабочий процесс:

  • отправлено в удаленную ветвь (то же имя локальной ветви)
  • удалено, что удаленная ветка
  • изменило некоторые вещи и зафиксировано
  • отправленоснова к тому же имени удаленной ветви (то же имя локальной ветви)
  • получил ошибку src-refspec.

Исправлена ​​ошибка, просто создавая новую ветку и нажимая снова. (Странно было то, что я не мог просто переименовать ветку - дал мне роковой ответ: переименовать ветку не удалось)

0 голосов
/ 25 января 2019

Разрешение на выдачу? Разрешение Fork it

Я получил эту ошибку, потому что у меня не было разрешения на передачу в репозиторий, поэтому мне пришлось Fork it и затем снова выполнил команды pull, commit, push на разветвленном репо.

...