我试图按照this帖子中建议的解决方案但是它没有用,我仍然得到:src refspec master与之匹配。
这是我做的: 遵循this解决方案
// adding the file I created
$ git add .
$ git commit -m 'initial commit'
$ git push origin master
error: src refspec master does not match any.
做的时候:
$ git push origin HEAD:master
b40ffdf..a0d1423 HEAD -> master // looks promising
// adding a remote
$ git remote add devstage -f <another git>
$ git merge devstage/master -s recursive -X ours
$ git push -u devstage master
error: src refspec master does not match any.
更多信息:
$ git branch
* origin
$ git show-ref
refs/heads/origin
refs/remotes/devstage/master
refs/remotes/origin/HEAD
refs/remotes/origin/devstage
refs/remotes/origin/master
refs/remotes/origin/origin
所以我肯定错过了refs / heads / master但不知道如何创建它。
由于
答案 0 :(得分:47)
这应该可以帮到你
git init
git add .
git commit -m 'Initial Commit'
git push -u origin master
答案 1 :(得分:26)
我有同样的问题,要解决它,请按照以下步骤进行操作
git init
git add .
git commit -m 'message'
git push -u origin master
此后,如果您仍然遇到该错误,请再次按照以下步骤操作
git add .
git commit -m 'message'
git push -u origin master
对我有用,希望它会帮助任何人
答案 2 :(得分:22)
从git branch
看来,您的本地分支名称显示为“origin”。
您可以使用-mv
标志重命名分支,如下所示:
git branch -mv origin master
此git branch
后应显示master
: - )
只是为了确保名称确实是唯一误入歧途的名称,您可以运行git log
并查看最后几次提交 - 并将它们与bitbucket网站上的最后几次提交进行比较。
答案 3 :(得分:9)
我再次出现相同的错误。
我在本地存储库中添加了文件并尝试了命令
&#34; git push origin master&#34;
显示相同的错误
我遗失的所有我都没有承诺。
<强>&#34; git commit -m&#39; message&#39; &#34; 强>
在Runnig之后,它起作用了
答案 4 :(得分:4)
尝试:
git push origin HEAD:master
答案 5 :(得分:4)
只需添加一个空提交即可使用
解决问题$ git commit -m "empty commit" --allow-empty
$ git push
//以上在不进行编辑的情况下进行空提交,然后按
答案 6 :(得分:2)
一旦我忘记添加文件,这就会发生在我身上。所以我遇到了同样的错误。您所需要做的就是添加文件。
git add .
或要添加的文件名。您应该首先使用git init
来初始化仓库。git commit -m 'Initial Commit'
。git push -u origin master
答案 7 :(得分:1)
git push origin HEAD:master
git push
时,Git抛出了以下错误。很明显这是因为Git在推送提交时匹配本地和远程分支。这是push.default
行为,您可以找到更多详细信息here.
fatal: The upstream branch of your current branch does not match
the name of your current branch. To push to the upstream branch
on the remote, use
git push origin HEAD:<Branch_Name>
To push to the branch of the same name on the remote, use
git push origin <Branch_Name>
To choose either option permanently, see push.default in 'git help config'.
答案 8 :(得分:0)
对于新的存储库,该方法对我有用:
删除与git相关的文件
rm -rf .git
再次执行提交
git add . && git commit -m "your commit"
添加git URL并尝试再次推送
git remote add origin <your git URL>
然后尝试再次推送
git push -u origin master -f
成功!
由于它是一个新的存储库,因此删除git并再次添加它对我来说并不重要。
答案 9 :(得分:0)
确保如果您正在推送 master 分支,请确保您当前在 master 分支中,如果没有检出到 master 分支,现在推送您的提交。要列出所有当前分支,请使用:
git branch
你当前工作的分支应该在开头有一个星号,例如,如果我正在处理我的
*devstage
master
在这种情况下,如果要合并 master 和 devstage 两个分支,请先推送 devstage 分支中的提交,然后执行 git pull request。
答案 10 :(得分:0)
在尝试 时,我在新存储库中遇到此错误 (error: src refspec master does not match any
git push origin master
),因为 GitHub 将主分支的默认名称更改为 main
.
所以,git push origin main
为我工作。
答案 11 :(得分:0)
我也遇到了同样的错误。 就我而言,以下是场景。
我有主分支设置为原点。
另一边我有发布分支“Release_branch”。
我必须从 Release 分支分叉我的功能分支(i.efeature/testBranch)。
以下是我做的步骤。
$ git checkout Release_branch
$ git pull
$ git checkout feature/testBranch
$ git commit -m "SOME_MESSAGE"
$ git push -u origin feature/testBranch
答案 12 :(得分:0)
我已经提交了更改并添加了所有文件,其起源与远程相同,但仍然不断出现该错误。我对此的简单解决方案是:
struct ContentView: View {
@State var text: String = ""
var body: some View {
TextView(text: $text) { // Configuring the text field
$0.font = UIFont(name: "HelveticaNeue", size: 16)
$0.isScrollEnabled = true
$0.isEditable = true
$0.isUserInteractionEnabled = true
$0.backgroundColor = UIColor(white: 0.0, alpha: 0.00)
$0.textColor = UIColor.black
}
onCommit: { // Detecting the commit
print("Committed with text: " + text)
}
.onChange(of: text) { value in // The native way to detect changes of a State
print("text now: " + text)
}
}
}
struct TextView: UIViewRepresentable {
@Binding var text: String
var configurate: (UITextView) -> ()
var onCommit: ()->()
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
func makeUIView(context: Context) -> UITextView {
let myTextView = UITextView()
configurate(myTextView) // Forwarding the configuring step
myTextView.delegate = context.coordinator
return myTextView
}
func updateUIView(_ uiView: UITextView, context: Context) {
uiView.text = text
}
class Coordinator: NSObject, UITextViewDelegate {
var parent: TextView
init(_ uiTextView: TextView) {
self.parent = uiTextView
}
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if (text == "\n") {
textView.resignFirstResponder()
parent.onCommit() // Execute the passed `onCommit` method here
}
return true
}
func textViewDidChange(_ textView: UITextView) {
parent.text = textView.text // Update the actual variable
}
}
}
答案 13 :(得分:0)
此错误也是由于不匹配 本地分支名称引起的。
确保输入正确的本地分支名称(检查拼写和区分大小写)
我遇到了同样的错误,因为我的本地分支名称为“ 已验证”,并试图使用git push -f origin validate
进行更改,并将其更新为git push -f origin validated
可用。
希望这会有所帮助。
答案 14 :(得分:0)
FWIW,遇到了相同的错误,但认为它是由于以下事件序列导致的:
master
分支创建的。dev
分支(该分支被定义为默认分支),以及添加到master
分支的权限,以防止在没有请求请求的情况下进行更改。然后,当尝试将更改从本地推送到远程时,收到错误“ src refspec master不匹配”,或者当尝试推送到dev
时,“ src refspec dev不匹配任何”
因为本地克隆中有待处理的更改,所以我不想对其进行爆炸并刷新。
因此,通过将本地分支重命名为dev
...
$ git branch -m dev
...之后是git push origin dev
的常规推送,这次正常运行而没有引发上述错误。
答案 15 :(得分:0)
这件事发生在我身上,我发现github试图验证我的帐户。 因此您需要以下两个命令:
String [] n = input.replace("or(",":(").split(":");
答案 16 :(得分:0)
在我的情况下,错误是因为我正在输入
引起的 git push origin master
当我在开发分支时 尝试:
git push origin branchname
希望这有助于某人
答案 17 :(得分:0)
检查是否从所需目录(放置文件的位置)调用git命令。
答案 18 :(得分:0)
仅因为您的本地分支不对远程存储库中的分支进行数学运算。 git push origin HEAD:master 无论如何,您都可以忽略冲突并上传提交。
答案 19 :(得分:0)
在git config中设置用户名和密码
在终端中,键入
vi .git/config
使用
修改网址url = https://username:password@github.com/username/repo.git
输入:wq
以保存
答案 20 :(得分:0)
如果分支名称中有拼写错误,通常会发生此错误。
例如,你在分支adminstration
上并且想要调用:
git push origin administration
。
请注意,您没有第二个i
字母admin(i)stration
,就在分支机构上,这就是为什么git会阻止您推送到另一个分支的行为!
答案 21 :(得分:0)
运行命令git show-ref
,结果为refs/heads/YOURBRANCHNAME
如果您的分支不在那里,那么您需要通过
git checkout -b "YOURBRANCHNAME"
git show-ref
,现在将显示您的分支参考。
现在您可以在分支上执行操作。
答案 22 :(得分:-1)
错误演示:
007@WIN10-711082301 MINGW64 /d/1 (dev)
$ git add --all
007@WIN10-711082301 MINGW64 /d/1 (dev)
$ git status
On branch dev
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: index.html
new file: photo.jpg
new file: style.css
007@WIN10-711082301 MINGW64 /d/1 (dev)
$ git push origin dev
error: src refspec dev does not match any.
error: failed to push some refs to 'git@github.com:yourRepo.git'
你可能不会 $ git commit -m "discription"
。
<强>解决方案:强>
007@WIN10-711082301 MINGW64 /d/1 (dev)
$ git commit -m "discription"
[dev (root-commit) 0950617] discription
3 files changed, 148 insertions(+)
create mode 100644 index.html
create mode 100644 photo.jpg
create mode 100644 style.css
007@WIN10-711082301 MINGW64 /d/1 (dev)
$ git push origin dev
To git@github.com:Tom007Cheung/Rookie-s-Resume.git
! [rejected] dev -> dev (fetch first)
error: failed to push some refs to 'git@github.com:yourRepo.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
答案 23 :(得分:-1)
对我来说,修复似乎是“git”。 (分段所有当前文件)。显然这是在git init之后需要的吗? 我通过“get reset”跟踪它(取消暂存所有文件)并继续执行完全相同的命令以仅暂存几个文件,然后成功推送。
git .
git reset