在Git中推送提交时,消息'src refspec master与任何'都不匹配

时间:2010-11-15 06:09:11

标签: git commit

我用以下代码克隆我的存储库:

git clone ssh://xxxxx/xx.git 

但在我更改了一些文件并addcommit之后,我想将它们推送到服务器:

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'

111 个答案:

答案 0 :(得分:3491)

也许你只需要提交。我做的时候碰到了这个:

mkdir repo && cd repo
git remote add origin /path/to/origin.git
git add .

糟糕!从来没有犯过!

git push -u origin master
error: src refspec master does not match any.

我所要做的就是:

git commit -m "initial commit"
git push origin master

成功!

答案 1 :(得分:711)

  1. 请尝试git show-ref查看您拥有的内容。有refs/heads/master吗?

  2. 您可以尝试git push origin HEAD:master作为更多与本地参考无关的解决方案。这明确指出您要将本地参考HEAD推送到远程参考master(请参阅git-push refspec文档)。

答案 2 :(得分:204)

删除本地计算机中的所有文件后,我也遇到了类似的错误,我必须清理存储库中的所有文件。

我的错误信息是这样的:

error: src refspec master does not match any.
error: failed to push some refs to 'git@github ... .git'

并通过执行以下命令解决:

touch README
git add README

git add (all other files)
git commit -m 'reinitialized files'
git push origin master --force  # <- caution, --force can delete others work.

就是这样,希望这会有所帮助。

答案 3 :(得分:174)

  1. 我的更改已提交
  2. 强制推动仍然给了我同样的错误。
  3. 所以我尝试了Vi's solution

    git push origin HEAD:<remoteBranch> 
    

    这对我有用。

答案 4 :(得分:108)

git push -u origin master
error: src refspec master does not match any.

为此您需要输入如下的提交消息,然后按下代码

git commit -m "initial commit"

git push origin master

成功推送到主人

答案 5 :(得分:105)

对我来说,我必须确保在服务器中正确配置公钥(附加在〜/ .ssh / authorized_keys中)和github / bitbucket(添加到github上的SSH密钥或bitbucket) - 他们需要匹配。

然后:

git add --all :/

git commit -am 'message'

git push -u origin master

最终为我工作。

答案 6 :(得分:69)

我发现这只发生在一个全新的存储库中,因为我只添加了一个目录。

一旦我添加了一个文件(例如README),git push就能很好地工作。

答案 7 :(得分:64)

丢失或跳过git add .git commit可能会导致此错误:

git push -u origin master
Username for 'https://github.com': yourusername
Password for 'https://yourusername@github.com': 
error: src refspec master does not match any.
error: failed to push some refs to 'https://github.com/yourusername/foobar.git'

要修复它,请重新初始化并遵循正确的顺序:

git init
git add .
git commit -m 'message'
git *create remote
git push -u origin master

答案 8 :(得分:58)

要解决此问题,请重新初始化并遵循正确的代码序列:

git init
git add .
git commit -m 'message'
git push -u origin master

答案 9 :(得分:51)

确保先添加,然后提交/推送:

像:

git init
git add .
git commit -m "message"
git remote add origin "github.com/your_repo.git"
git push -u origin master

答案 10 :(得分:41)

当您在特定分支中并尝试推送另一个尚不存在的分支时,也会发生这种情况,例如:

$ git branch
* version-x  # you are in this branch
  version-y

$ git push -u origin master
error: src refspec master does not match any.
error: failed to push some refs to 'origin_address'

答案 11 :(得分:39)

对我来说,以下是移动未跟踪文件的方法:

Alamofire

接下来,我遵循类似的步骤

git add --all

然后

 git commit -m "First commit"

最后但并非最不重要:

git remote add origin git@github.....

执行此操作时,Windows安全性将弹出,要求您输入用户名和密码。

答案 12 :(得分:25)

只需添加初始提交,按照以下步骤操作: -

  • git add。

  • git commit -m“initial commit”

  • git push origin master

    这对我有用

答案 13 :(得分:18)

我遇到了同样的问题,并且我使用了--allow-empty

$ git commit -m "initial commit" --allow-empty
...
$ git push
...

答案 14 :(得分:17)

这只是意味着您忘记进行初始提交,请尝试

git add .
git commit -m 'initial commit'
git push origin master

答案 15 :(得分:17)

我的问题是&#39;主人&#39;分支还没有在本地创建。

快速

git checkout -b "master" 

创建了主分支,此时快速:

git push -u origin master

将工作推到git仓库。

答案 16 :(得分:17)

  1. 第一个git add。
  2. 第二个git commit -m“message”
  3. 第三个git push origin分支 请检查拼写错误,因为这也可能会出错。

答案 17 :(得分:16)

如果您在第一次推送之前忘记提交,就会发生这种情况。只需运行:

git commit -m "first commit"

答案 18 :(得分:15)

当我错过跑步时,我遇到了同样的问题:

git add .

(您必须至少有一个文件,否则您将再次收到错误)

答案 19 :(得分:15)

要检查当前状态,请git status

并按照以下步骤操作:

git init
git add .
git commit -m "message"
git remote add origin "github.com/your_repo.git"
git push -u origin master

答案 20 :(得分:15)

简短答案:此错误表示您要推送到远程的分支不存在!

就我而言,从2020年10月开始,此后创建的回购交易具有main分支,而不是先前的master分支。所以我要做的就是:

git push -u origin main 
  • 如果设置了上游,则可以跳过-u标志(例如,如果您已经克隆了它)

宾果!那对我有用! 希望有帮助!编码愉快!

答案 21 :(得分:13)

也许分支是主而不是主

试试

git push origin HEAD:main git push origin main

答案 22 :(得分:12)

当您添加文件,忘记提交和推送时会发生这种情况。 所以提交文件然后推送。

答案 23 :(得分:12)

我有同样的问题。我按照以下步骤进行操作

1. git commit -m 'message'
2. git config --global user.email "your mail"
3. git config --global user.name "name"
4. git commit -m 'message'
5. git push -u origin master

希望它会帮助任何人

答案 24 :(得分:12)

在 2021 年,github 将默认分支名称更改为 main,之前它是 master,我遭受了因为我试图推送到不存在的 master 而远程分支是 { {1}} 而不是,请确保您使用正确的分支名称。

下面的命令对我有用

main

答案 25 :(得分:11)

  

git add。

您只需要该代码跟踪目录中所有未跟踪文件

答案 26 :(得分:11)

如果在分离HEAD模式下工作时出现此错误,您可以执行以下操作:

git push origin HEAD:remote-branch-name

另见: making a git push from a detached head

如果您所在的本地分支不是远程分支,则可以执行以下操作:

git push origin local-branch-name:remote-branch-name

答案 27 :(得分:11)

我还按照以下说明遵循githubs的指示,但是仍然遇到OP中提到的相同错误:

git init git add . git commit -m "message" git remote add origin "github.com/your_repo.git" git push -u origin master

对我来说,我希望对我有所帮助,我在MacOS上推送了一个大文件(1.58 GB on disk)。在复制粘贴上面建议的代码行时,我没有等待处理器实际完成add .进程。因此,当我键入git commit -m "message"时,它基本上没有引用任何文件,也没有完成将代码成功提交到github所需的任何操作。

这一点的证明是,当我键入git status时,通常会为添加的文件获得绿色字体。但是一切都是红色的。好像根本没有添加。

因此,我重新执行了步骤。输入git add .,然后等待文件添加完成。然后按照以下步骤操作。

我希望这对某人有帮助。

答案 28 :(得分:11)

您可能忘记了命令“ git add”。在“ git init”命令之后。

答案 29 :(得分:11)

在GitHub更新01.10.20之后,您应该使用main而不是master。

以这种方式做...

  1. Create a repository on GitHub
  2. 删除本地目录中的现有.git文件
  3. 转到本地项目目录并键入git init
  4. git add .
  5. git commit -m"My First Commmit"
  6. 现在检查您的分支名称,它将在您的本地项目中为master
  7. git remote add origin <remote repository URL past here from the github repository>,然后键入git remote -v
  8. git push -f origin master
  9. 现在检查github存储库,您将看到两个分支1。main 2。master
  10. 在您的本地存储库中创建新分支,分支名称将为main
  11. git checkout main
  12. git merge master
  13. git pull origin main
  14. git push -f origin main

注意:从20年1月10日起,github决定使用main而不是master分支使用默认分支名称

答案 30 :(得分:10)

git push -u原始主机

error: src refspec master does not match any.
error: failed to push some refs to 'http://REPO.git'

这是由于存储库仍然为空引起的。存储库中没有提交,因此没有主分支要推送到服务器。

对我有用

分辨率

1) git init
2)git commit -m "first commit"
3)git add app
4)git commit -m "first commit"
5)git push -u origin master

答案 31 :(得分:10)

2020 年底,GitHub 将其 master 分支更改为 main 分支

当我使用 git push -u origin master 时,我注意到 GitHub 创建了一个新的 master 分支,这不是主分支:

现在,当我尝试使用 git push -u origin main 直接推送到主分支时,它给了我这个错误:

我遇到了这个错误:

src refspec main does not match any
error: failed to push some refs to 'https://github.com/<my_project_name>.git

在第一次提交 main 后,我修复了使用这些步骤的问题。在以下代码中更改 GitHub 的 URL:

git branch -M main
git remote add origin https://github.com/Sidrah-Madiha/<my_project_url>.git
git push -u origin main

答案 32 :(得分:9)

如果你想要推送的分支名称中有拼写错误,也会发生这种情况。

答案 33 :(得分:9)

如果您在执行git init并推送初始提交后遇到此问题。您可以尝试以下方法,

git checkout -b "new branch name"
git push origin "new branch name"

您的代码将被推送为新分支。

答案 34 :(得分:9)

在您从外部存储库(GitHub)签出代码的情况中,
并希望在个人/内部系统中导入它,

这个命令真的很闪耀:

git push --all origin

这会将所有本地分支推送到远程,
没有检查参考, 没有坚持提交。

答案 35 :(得分:8)

如果您是第一次使用它,则需要配置您的git:

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

git config --global user.name "Your Name"

答案 36 :(得分:8)

我忘了做一个&#34; git pull origin master&#34;在提交之后和推送之前它会导致同样的问题:&#34; src refspec master在git&#34;中推送提交时不匹配任何内容。 所以,你应该做的是:

EditText

答案 37 :(得分:8)

当您尝试将一个空的仓库推送到git服务器时,发生此错误。可以通过初始化README.md文件来缓解这种情况:

cat > README.md

然后输入内容,然后按Enter键和CTRL+D保存。 然后是通常的提交步骤:

git add .
git commit -m "Initial commit"
git push origin master

答案 38 :(得分:8)

我也遇到了同样的问题,并在此处尝试了大多数答案,但这是因为Github重命名的最新更改。

GitHub逐渐将存储库的默认分支从master重命名为main

https://github.com/github/renaming

您的新命令将是:

git push origin main

代替此:

git push origin master

答案 39 :(得分:8)

Github将默认分支名称从master更改为main。 因此,如果您最近创建了该存储库,请尝试推动main分支

git push origin main

Github Article

答案 40 :(得分:7)

试试这个:

git add .

git commit -m "your commit message"

git remote add origin *remote repository URL*

git push origin *your-branch-name*

答案 41 :(得分:6)

这对我来说重置为远程主控回购

git checkout master
git commit -a -m "your comment"
git push origin master

答案 42 :(得分:6)

此问题的另一个可能原因是您拼错了分支名称。所以,如果你做了我所做的事情,那么问题将通过纠正来解决:

git push origin mater

git push origin master

答案 43 :(得分:6)

我收到此错误是因为我的本地分支机构与我尝试使用git push origin <<branchname>>创建的新远程分支不匹配。

答案 44 :(得分:6)

添加空目录时出现此问题。 Git不允许推送空目录。这是一个简单的解决方案。

在要推送到远程的目录中创建.gitkeep文件,并从命令行提交“空”目录:

touch your-directory/.gitkeep
git add your-directory/.gitkeep
git commit -m "Add empty directory"

答案 45 :(得分:6)

检查您的提交标题,因为如果您忘记了git commit -m“xxxx”命令,则会遇到同样的问题

git commit -m "initial commit"

答案 46 :(得分:6)

遇到了同样的问题,但在我的情况下,在创建新的Repository工作时,按照页面上给出的确切步骤进行操作。只是粘贴在这里

  echo "# YYYY" >> README.md
  git init
  git add README.md
  git commit -m "first commit"
  git remote add origin https://github.com/XXXX/YYYY.git
  git push -u origin master

在GitBash中输入以上内容 XXXX是用户名,YYYY是存储库名称。

答案 47 :(得分:6)

仅提交即可解决此错误。

git commit -m "first commit"

答案 48 :(得分:6)

为避免在 2021 年及以后出现此错误,请在使用 git init 之前使用此命令

git config --global init.defaultBranch main 这告诉您的 git 始终使用 main 作为默认分支名称,而不是 master

答案 49 :(得分:5)

我认为是因为你推了一个无效的分支。通常因为存储库没有公共主分支(可能是开发分支)。您可以使用     git branch 看分支。

答案 50 :(得分:5)

再次检查您输入的是正确的分支名称。我遇到了相同的错误,在查看git show-ref之后,我能够看到我在输入错误的内容,因此没有参考。

答案 51 :(得分:5)

对我有用的是简单地签出我要推送代码的分支,然后简单地推送您的代码。

git checkout -b branchname-on-which-i-will-push-my-code

git add .
git commit -m "my commit message"
git push origin branchname-on-which-i-will-push-my-code

答案 52 :(得分:5)

确保您要向右推分支,或者有任何错字。使用此命令检查您当前的工作分支名称
git show-branch

答案 53 :(得分:5)

首先,请确保您正在使用master分支。在我的情况下,分支是主而不是主。所以我所做的是

git push origin main

您可以在这张照片中看到结果

Git problem

答案 54 :(得分:5)

本月的一个原因可能是:github已将默认的“ master”分支重命名为“ main”分支。 因此,请改用git push origin main

答案 55 :(得分:5)

我今天有同样的问题。我创建了一个新的存储库并将其克隆到我的计算机上。我提交了我的代码并尝试将其推送。我遇到了同样的错误。我发现这是因为我正在使用:

git push origin master

我在这里做错的是,我假设我的默认分支为master,而GitHub上的新默认分支为main。我用:

git push origin main

效果很好。

我的解决方案仅适用于较新的存储库或最近面临此问题的人们,因为GitHub取代了main而不是master术语。 因此,如果出现此错误,请确保检查要推送到的分支以及GitHub上的分支名称。

答案 56 :(得分:5)

我遇到了同样的问题,

解决了我的问题。

只需创建一个分支:

git checkout -b "master"

之后

git push -u origin master

亲爱的。

希望能解决。

答案 57 :(得分:4)

如果要在原点远程创建新分支,则需要首先在本地创建相同的分支:

$ git clone -b new-branch
$ git push origin new-branch

答案 58 :(得分:4)

我有类似的错误。但是git告诉我:

*** Please tell me who you are.

运行

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

或设置帐户的默认身份。

Omit --global to set the identity only in this repository.

然后错误就消失了。

答案 59 :(得分:4)

我有同样的问题,并在以下步骤中修复我的问题:

希望有所帮助

答案 60 :(得分:4)

当我没有提到原点的主分支时,这发生在我身上。因此,您可以尝试以下方法:

git pull origin master

这将创建对本地存储库中源的主分支的引用。然后,您可以将本地存储库推送到原点。

git push -u origin master

答案 61 :(得分:4)

尝试git show-ref

您可能会看到refs/heads/live

这意味着您应该

git push -u origin live

答案 62 :(得分:4)

更新为以前的答案。

此外,别忘了github已将'Master'更改为'Main',因此请确保您通过以下方式进行推送:

git push origin main

答案 63 :(得分:3)

老话题,但我有这个问题,想分享我的经验。我已经创建了一个提交。

确保您正在推进正确的分支

我正在输入git push origin master但是当我输入git branch时我在v1分支上,所以我不得不输入git push origin v1

答案 64 :(得分:3)

我在错误的目录中创建了文件并尝试git push -u origin master,我收到了错误消息 一旦我cd到当前目录git push -u origin master,一切都很好。

答案 65 :(得分:3)

我遇到的问题是尝试重置我的存储库时。我想删除所有历史记录并且不提交任何内容。但是,您必须至少添加SOMETHING才能提交,因此我只创建了一个空文本文件git add .,然后git commit -m "Reset repository"

答案 66 :(得分:3)

我曾经遇到过这个问题,因为我在远程仓库上有一个分支,但不在本地。我做到了:
git fetch && git checkout 'add remote branch name here',它解决了我的问题。
有时,当您不进行更改时会发生此问题,因此,您需要运行以下git命令:
git add your_file_name.extensiongit add .添加所有更改。
此时,您需要使用以下内容提交更改:
git commit -m 'your commit message here'
完成所有这些操作后,您只需使用以下命令将更改推送到远程仓库中:
git push origin your_branch_name

答案 67 :(得分:3)

首先,您需要git init创建自己的.git文件,否则,如果克隆某人的git文件夹,它将无法识别您的git凭据。启动git后,请继续执行git add.git commit ...

答案 68 :(得分:3)

您可能出于多种原因遇到此问题。

1。待提交的文件已提交

如果您通过运行git add命令(即git add .)添加了更改,但从未提交过这些文件,则尝试将其推送到远程存储库中。在这种情况下,您将遇到错误src refspec master does not match any.

2。无效的本地分支名称

如果您在branch的名称中输入了错字(即mster而不是master),则可能导致您遇到此错误。表示您要插入的分支不在本地存储库中。

答案 69 :(得分:3)

我遇到了同样的问题。解决方案是将代码推送到存储库中,就像它是现有项目而不是正在初始化的全新项目一样。

git remote add origin https://github.com/Name/reponame.git
git branch -M main
git push -u origin main

答案 70 :(得分:3)

2020

如果30个以上的答案均无效,则您可能需要运行git push origin main(在编写此答案时,master已重命名为main)

答案 71 :(得分:3)

作为解决问题的选项之一:

git push origin HEAD

答案 72 :(得分:2)

我正在为一个github仓库做贡献,所以我分叉了项目,克隆了它,创建了我自己的分支,做了一些提交并尝试推送。在这一点上,我发现我克隆的不是我的叉子,而是原始的项目仓库(我没有权限推送)。

所以我将.git/config更改为指向原点。

此时我试图推送时遇到错误error: src refspec my_awesome_branch does not match any.

我所要做的就是触摸任何文件并提交它(就像你在this answer中看到的那样

git touch README
git commit -m "fixing error in my git repo"

而不是:

git checkout master
git pull origin master
git push origin master # this will tell my remote repo about my new branch
git checkout my_awesome_branch
git push origin my_awesome_branch # now it will work

答案 73 :(得分:2)

我在Android Studio中处理VCS时遇到了这个问题。事实证明我所要做的就是:

  1. 从&#34; app&#34;中选择所有文件文件夹中;
  2. 转到VCS(顶部选项);
  3. &#34;添加&#34;文件;
  4. 通过终端再次提交,或通过下拉菜单点击,然后;
  5. 推!
  6. 尤里卡! :d

答案 74 :(得分:2)

我忘了提交,然后跑到这里。 只需提交

答案 75 :(得分:2)

几天前我遇到了同样的问题。

如果现在(2020年)创建了一个新的存储库,则默认分支是GitHub上的 main

您现在可以在存储库分支中检查GitHub。

,您还可以通过运行以下命令在终端上检查分支:

git branch

这就是为什么您需要运行

git push origin main

代替

git push origin master

好运

答案 76 :(得分:2)

如果你的分支是“main”

enter image description here

运行此命令

git push origin main

如果你的分支是“master”

enter image description here

运行此命令

git push origin master

答案 77 :(得分:2)

March 2021, with Git 2.31

空 GitHub 存储库的 git clone 将创建一个以“main”作为默认分支的本地存储库,即使 init.defaultBranch 设置为 master

Git transfert protocol v2supported by GitHub 会将远程默认分支的名称(现在为 GitHub 的 main)与由 git clone 创建的本地 Git 存储库进行通信.

这意味着添加和提交新提交将在“main”分支上完成,即使 Git 客户端仍将 master 视为默认分支。

下次推送时不再有“src refspec master does not match any.”。

答案 78 :(得分:2)

面临的问题

当我在 GitHub 上创建一个新存储库并将其与我拥有的客户端计算机中的 react-app 链接时,我遇到了同样的问题。我使用了以下步骤:

问题之前使用的命令

git init
git commit -m "first commit"
git branch -M main
git remote add origin "_git repository link here"
git push -u origin main

我的错误

但是正如你所看到的,我的错误是没有使用 git add . 命令 我犯了这个错误,因为我已经有了 README.md 文件,而且 GitHub 在创建存储库时会用基本命令指导我们。

我的解决方案

我的解决方案是在 git add . 命令后使用 git init

答案 79 :(得分:1)

@Aryo在我的情况下,我必须使用我本地git存储库的完整url来推送文件。首先,我删除了当前目录中的所有文件。创建的README添加了它。添加了一些。然后我提交了这些文件,最后推送它们给存储库提供了正确的URL。这里你的存储库是服务器中存储库的名称。

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

答案 80 :(得分:1)

我有一个非常长的本地分支名称。

git branch -m new_shorter_branch_name

修复了问题。

答案 81 :(得分:1)

git错误: 错误:src refspec master与any匹配。

修复此步骤: git commit -m“first commit”

在我跑之前

git add

在我跑完之后: git push -u origin master

!!!

答案 82 :(得分:1)

在我的情况下,我克隆了存储库,但我没有在本地切换到分支

我这样解决了

在更改代码之前,您应该这样做  git checkout branch-name

然后更改代码

之后将代码推送到分支  git push -u origin branch-name

答案 83 :(得分:1)

我抓住了这个“错误:src refspec master与any匹配。” 当试图将提交推送到GitHub时,进行更改(在GitHub上)。

git push -u origin branch-name - helped me up to date my local files

答案 84 :(得分:1)

为我工作

结帐主分行

git checkout -b master
git add .
git push origin master 

或使用--force进行强制更改

git push origin master --force

答案 85 :(得分:1)

我遇到了同样的问题,还发现我没有提交任何文件,因此当我再次尝试提交时,会收到此错误消息

*** 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

我希望这对您有帮助

答案 86 :(得分:1)

也许github不知道你是谁。

首先,您必须运行: git config --global user.email "you@example.com" git config --global user.name "Your Name"

答案 87 :(得分:1)

如果您有Visual Studio代码

  1. 如果不需要跟踪更改,则删除.git文件夹(如果是,则git stash)
  2. git init
  3. git commit -m“首次提交”
  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

答案 88 :(得分:1)

我也面临同样的问题。但是我注意到发生此错误时我的目录为空。当我创建示例文件并再次推送时,它可以工作。因此,请在推送之前确保您的文件夹不为空!

答案 89 :(得分:1)

我遇到了类似的错误。错误是由于此命令

<img src="">

后续命令对我有用

从这些命令开始

git push -u origin master

因此,在推送它之前,请运行以下命令以查看我们本地存储库已连接到Github上的哪个远程存储库以及您在哪个分支上。

git init
git add .
git commit -m "second commit"

远程->来源

分支->主要

git remote
git branch

或更具体地说:

git push -u remote branch

答案 90 :(得分:1)

从2020年10月1日起,GitHub将 master 分支的名称更改为 main 。这就是导致问题的原因。 当有人键入SELECT a.pkID FROM dbo.t_Activites a WHERE EXISTS (SELECT 1 FROM @ids i WHERE a.sFullPath LIKE CONCAT('%(', i.id, ')%')) 时,他们会看到此错误
git push origin master

这可以通过使用error: src refspec master does not match any error: failed to push some refs to 'https://github.com/vishnureddys/coding-skills.git'来解决。希望这可以帮助。我花了很多时间弄清楚为什么我不能将提交推送到master分支。

答案 91 :(得分:1)

还要检查您是否更改了分支名称

对我来说,我将分支名称从 add-status-conditions 更改为 add-status-condition 并且没有注意到最后缺少的 s。正确重命名分支并执行 git push origin add-status-conditions -f

这对我有用。

答案 92 :(得分:1)

git init

第一个命令..首先我们需要初始化 // 这应该可以正常工作!...

答案 93 :(得分:1)

检查当前分支是否仅为 master。我遇到了同样的问题,我的分支是主要的。所以运行以下命令对我有用:

<块引用>

git push origin main.

答案 94 :(得分:0)

当我收到src-refspec错误时,上述解决方案都不适用于我。 我的工作流程:

  • 推送到远程分支(相同的本地分支名称)
  • 删除了该远程分支
  • 改变了一些东西&amp;承诺
  • 再次推送到相同的远程分支名称(相同的本地分支名称)
  • 得到了src-refspec错误。

修正了错误,只需制作一个新分支,然后重新推送。 (奇怪的是,我不能简单地重命名分支 - 给我致命:分支重命名失败)

答案 95 :(得分:0)

我在尝试将内容推送到GitHub上的新回购时遇到此错误。我在本地创建了git repo,另外我使用Web GUI(包括LICENSE文件)在GitHub上创建了repo。

我把LICENSE文件从其他空的GitHub仓库中拉到我的本地仓库后,问题就消失了。在那之后,我可以毫无问题地推进。

答案 96 :(得分:0)

我也收到了这个问题但是因为我在推送之前意外关闭了我的服务器。这也会导致同样的错误。

答案 97 :(得分:0)

就我而言,在Windows上出现的问题似乎与我们在分支名称中添加feature\这样的前缀有关。我们尝试使用这样的前缀创建并推送一个分支(例如,feature\branch),但是已经有一个不同的分支,其名称前缀为Feature\(例如,Feature\otherbranch) 。这意味着在Windows上,新分支放在同一个refs\heads\Feature文件夹中。 Git可能区分大小写,但Windows文件系统不是。一旦我们检出了名为Feature\branch的本地分支。

,它就有所帮助

答案 98 :(得分:0)

对于Windows上Cmder中的Bash用户,请确保在新的主目录中创建一个新的.ssh文件夹。

1)转到您的主目录cd ~

2)生成ssh密钥ssh-keygen

3)将所有输入留空(按住回车键)

4)将id_rsa.pub文件复制到您的Github&gt;设置&gt; SSH密钥

答案 99 :(得分:0)

我遇到此错误,并且分支的名称存在问题,因为我使用了字符“&” 。我只是用“ ^&”跳过了它,就可以了。

答案 100 :(得分:0)

它不认识到您拥有master分支,只需创建它并再次提交即可。

要创建主分支:

git checkout -b master

答案 101 :(得分:0)

如果您在Windows上使用Git Bash,请尝试重新启动它。为我工作!

答案 102 :(得分:0)

权限问题?分辨率分叉

我收到此错误,是因为我没有对存储库的推送权限,因此不得不 Fork 然后在分叉存储库上再次执行pull,commit,push命令。

答案 103 :(得分:0)

就我而言,我忘记了包含.gitignore文件。这是所需的所有步骤:

  1. 在远程上创建一个空的git仓库
  2. 在本地创建.gitignore 文件为您的项目。 Github为您提供了examples here
  3. 的列表
  4. 启动一个终端,然后在您的项目中执行以下命令:

    git remote add origin YOUR/ORIGIN.git

    git add .

    git commit -m "initial commit or whatever message for first commit"

    git push -u origin master

答案 104 :(得分:0)

在我的情况下,fastlane match nuke development(它从git凭证存储和开发人员门户中删除了开发证书和配置文件)试图推送主服务器,但我们没有主服务器。由于我们有两个不同的团队,所以我们也有两个不同的分支。解决问题的方法是致电告诉match有关正确的分支:

fastlane match --git_branch <your_branch> nuke development

答案 105 :(得分:0)

如果您在分支机构的名称中有一个 typo ,因此也可能发生这种情况,因此您要尝试推送不存在的东西!哈!

在我的情况下,我实际上创建了一个名称不正确的分支(很显然是偶然的),它被命名为fetaure/<something>并试图推送feature/<something>

大脑会以一个单元为单位读取单词,因此有时两个单词看起来相同,但事实却并非如此!哈!

只要确保您没有分支名称的错字! (或更准确地说,请检查您要推送的分支是否确实与您在本地定义的分支匹配,特别是如果您手动执行新创建的分支git push origin feature/<newBranch>的第一次推送)

答案 106 :(得分:0)

我认为这可能会对某人有所帮助。 我今天做了第一次重要的承诺。 考虑到它会一直吐出错误,因此我尝试了很多指南。

首先:cd进入包含文件的目录 初始化git:git init 提交文件:git commit 如果有任何朦胧的bash命令,则强制执行提交:单击“ I”插入您的提交消息 要继续:请点击“ ESC”

要首先发送到github仓库,请确保已添加用户名和电子邮件:

git config --global user.name 'Your name'
git config --global user.email 'name@mail.com'

继续:

git remote add origin https://github repo url

要推送到存储库:

git push -u origin 'https://github.repo url'

它将提交提交加载到您的存储库。 完成!

答案 107 :(得分:0)

问题是您没有将 git 配置为始终在远程从本地创建新分支。

如果您总是只想在远程创建新分支以镜像和跟踪您的本地分支,则永久修复是:

git config --global push.default current

现在你可以使用 git push 而不会再有错误了!

答案 108 :(得分:0)

  1. git 分支

  2. 使用 -mv 标志重命名分支:

    git branch -mv origin master

在这个 git 分支之后应该显示 master

答案 109 :(得分:0)

确保分支名称中没有不可见的错别字:

$ git branch
master
* <U+0096>your_branch_name

有一个不可见的 <U+0096> 字符,可能是通过粘贴分支名称到达那里的。 将您当前的分支重命名为正确的值,然后再次尝试 push

$ git branch -m your_branch_name

答案 110 :(得分:0)

git 初始化 git 添加。 git commit -m "消息" 提示我输入电子邮件和用户名 git config --global user.email "you@example.com" git config --global user.name "你的名字" 输入上述详细信息后提交文件并成功推送。

git push