无法将提交推送到GitHub上新创建的存储库

时间:2018-09-13 12:11:34

标签: git github repository git-push

我最近刚刚在我的帐户上(仅对我而言)在GitHub上创建了一个新存储库。使用命令行,我导航到一个包含一些文件和文件夹的文件夹,我想使用命令行将其推送到联机存储库。我的在线存储库仅包含一个初始提交和一个自述文件。我使用git add --all将所有内容添加到文件夹中,并将当前目录用作主目录,但在推送时仍然遇到问题。

我尝试使用fetchpullmergerebase,然后再使用push,但它不起作用。这是我所做的一部分:

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.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.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ ^C

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git fetch origin master
warning: no common commits
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/SamuraiHub/Java
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
Auto packing the repository in background for optimum performance.
See "git help gc" for manual housekeeping.
Counting objects: 6350, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (6164/6164), done.
Writing objects: 100% (6350/6350), done.
Total 6350 (delta 534), reused 0 (delta 0)
Removing duplicate objects: 100% (256/256), done.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git merge origin master
merge: origin - not something we can merge

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master


Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git checkout master
Already on 'master'

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master


Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull --rebase
There is no tracking information for the current branch.
Please specify which branch you want to rebase against.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master


Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git fetch origin master
From https://github.com/SamuraiHub/Java
 * branch            master     -> FETCH_HEAD

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git merge origin master
merge: origin - not something we can merge

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git merge master
Already up-to-date.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ ^C

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull --rebase
There is no tracking information for the current branch.
Please specify which branch you want to rebase against.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master


Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master


Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master)
$ git pull origin master --rebase
From https://github.com/SamuraiHub/Java
 * branch            master     -> FETCH_HEAD
First, rewinding head to replay your work on top of it...



Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java ((ec222e4...)|AM/REBASE)
$

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java ((ec222e4...)|AM/REBASE)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and 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.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java ((ec222e4...)|AM/REBASE)
$ git checkout master
Checking out files: 100% (10551/10551), done.
Previous HEAD position was ec222e4... Initial commit
Switched to branch 'master'

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master|AM/REBASE)
$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': Muaz.Al.Jarhi@Gmail.com
To https://github.com/SamuraiHub/Java.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SamuraiHub/Java.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Muaz Aljarhi@MuazAljarhi-PC MINGW64 /f/muaz/Programming/Java (master|AM/REBASE)
$

除了从网站上传并使用--force-f选项以外,还有其他解决方法(我知道它可能不会在这里引起问题,但通常我们不应该使用它)? / p>

1 个答案:

答案 0 :(得分:2)

  

在线存储库仅包含一个初始提交和一个自述文件

那是你的问题。您的本地副本不包含该提交。

我可能会通过以下方法解决此问题:添加遥控器,获取origin/master重新设置(不合并)我的本地工作,然后推送:

git remote add origin <url>
git fetch origin
git checkout master
git rebase origin/master
git push

当然,如果您希望合并也可以。但是您有语法错误:

$ git merge origin master
merge: origin - not something we can merge

您需要合并 origin/master (命名远程跟踪引用的单个参数),而不是origin master(两个参数)。

您的git pull失败,因为没有master的跟踪信息:

$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master

Git不知道要提取哪个远程分支并将其合并到本地master中,但是您可以使用git branch --set-upstream-to来告知它,如错误消息所提示的那样。

请确保阅读Git提供的错误消息。它们可能有点密集,但确实包含有用的信息。

  

除了从网站上传并使用--force-f选项以外,还有其他解决方法(我知道它可能不会在这里引起问题,但通常我们不应该使用它)? / p>

在这种情况下,如果您不希望GitHub创建的README,我认为强制推送不会有任何危害(尽管我建议先获取并使用--force-with-lease,这样不太可能让您破坏您不了解的提交。