Git推送错误:“origin似乎不是git存储库”

时间:2013-03-15 16:41:07

标签: git git-remote

我正在关注instructions given here以创建一个Git存储库。一切顺利到最后一行:

$ git push -u origin master  
  

致命:'origin'似乎不是git仓库   致命:远程端意外挂断

我在OS X 10.6.8上使用git版本1.7.11.3

$ git remote -v  

什么都不返回

存储库的配置文件:

[core]
repositoryformatversion = 0  
filemode = true  
bare = false
logallrefupdates = true  
ignorecase = true  

我必须使用sudo visudo命令打开sudoers文件,并在其中添加以下内容(在#User privilege规范下):

git ALL=(ALL) ALL.  

现在,如果我这样做:

$ git remote add origin /Volumes/500GB/git-repository/myproject.git  

它返回时没有错误,但我在存储库中看不到任何代码 (它有上面提到的目录,如分支,钩子......)

如果我这样做:

$ git push -u origin master  
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

$ git remote -v   
origin /Volumes/500GB/git-repository/myproject.git (fetch)     
origin /Volumes/500GB/git-repository/myproject.git (push)

14 个答案:

答案 0 :(得分:45)

正如che's answer中已经提到的关于添加远程部分的内容,我相信你仍然缺少它。

关于在本地USB驱动器上添加遥控器的编辑。首先,你必须拥有一个裸露的存储库'如果您希望您的存储库成为共享存储库,即能够推/拉/获取/合并等等。

要创建裸/共享存储库,请转到所需位置。在你的情况下:

$ cd /Volumes/500gb/   
$ git init --bare myproject.git

有关创建裸存储库的更多信息,请参阅here

在您所需的位置设置裸存储库后,您现在可以将其作为遥控器添加到工作副本中。

$ git remote add origin /Volumes/500gb/myproject.git

现在您可以将更改推送到存储库

$ git push origin master

答案 1 :(得分:18)

以下是github的说明:

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/tqisjim/google-oauth.git
git push -u origin master

以下是实际工作的内容:

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/tqisjim/google-oauth.git
git clone origin master

克隆后,push命令会通过提示输入用户名和密码来成功

答案 2 :(得分:10)

您的配置文件不包含对“origin”遥控器的任何引用。该部分如下所示:

[remote "origin"]
    url = git@foo.com:repository.git
    fetch = +refs/heads/*:refs/remotes/origin/*

您需要先使用git remote add添加遥控器,然后才能使用它。

答案 3 :(得分:9)

很可能远程存储库不存在或者您添加了错误的存储库。

您必须先删除原点并重新添加:

git remote remove origin
git remote add origin https://github.com/username/repository

答案 4 :(得分:4)

你可能忘记在遥控器上运行“git --bare init”了吗? 那是我的问题

答案 5 :(得分:4)

当您在bitbucket.org创建存储库时,它会为您提供有关如何设置本地目录的说明。有可能,你只是忘了运行代码:

git remote add origin https://username@bitbucket.org/username/reponame.git

答案 6 :(得分:3)

我仍然很谦虚地分享我的简短答案,因为我回答这个问题太迟了。

Here's, a simple and clean explanation that solved my issue

此外,由于我使用的是 SSH密钥,因此我使用了以下命令:

  • $ git remote add origin git@github.com:{your-username} / {your-remote-repo-branch}

例如,它看起来像:

  • $ git remote add origin git@github.com:aniketrb-github / microservices.git

如果使用的是HTTPS URL,请参考上面的 @ sunny-jim 提供的答案。

如果我错了,请纠正我。谢谢。

答案 7 :(得分:2)

我的情况有点不同 - 无意中我已经更改了git存储库的所有者(在我的情况下是project.git目录),将所有者更改回 git 用户帮助

答案 8 :(得分:1)

我有这个问题,因为我已经在本地远程定义了起源。 所以只需将“ origin ”更改为其他名称:

git remote add originNew https://github.com/UAwebM ...

git push -u originNew

或者你可以删除你的本地血统。 检查您的远程名称类型:

git remote

删除远程 - 登录克隆存储库并输入:

git远程删除原点(取决于您的远程名称)

答案 9 :(得分:1)

这是我解决此问题的方式

转到Github上的远程存储库,然后复制项目的存储库URL。

在git bash上,键入:git remote add origin 远程存储库URL在此处

答案 10 :(得分:1)

看到这是我们遇到的问题,因为您的存储库无法从 CLI 访问,或者您无权这样做 第二种情况很简单,您只需请求访问权限即可。 对于第一种情况,如果 git push origin <private_branch_name> 不起作用,那么它将在 CLI 本身中提供解决方案 只需一步:

  1. git remote add <name> <URL> . {{3}} <URL> 可以使用 Gitlab/Github 的 UI 访问 -> 克隆 -> 复制 https。关联 然后
  2. git push origin <private_branch name> 现在提高MR。 参考图片。

答案 11 :(得分:0)

如果您使用HTTPS,请执行此操作 -

git remote add origin URL_TO_YOUR_REPO

答案 12 :(得分:0)

解决这个问题。我只是创建一个新文件夹并放入一些新文件。然后使用这些文件。

* git add .
* git commit 
* git remote add master `your address`

然后它告诉我登录。 输入您的用户名和密码。 之后

git pull 
git push origin master

完成后你已将代码推送到你的github

答案 13 :(得分:0)

设置远程存储库URL对我有用:

git remote set-url origin https://github.com/path-to-repo/MyRepo.git