git推送到远程存储库“无法从远程存储库读取”

2023-12-24

我搜索了一段时间,但找不到解决我的问题的方法。

我有一个服务器,我可以使用用户名通过 ssh 连接到git和本地 git 存储库。
现在我想将我的本地存储库推送到服务器上新创建的存储库。

这是我所做的:

  • 创建了一个 git 存储库/home/git/test.git
  • 将存储库初始化为裸存储库
  • 在本地机器上添加远程存储库
    git remote add test ssh://git@serverIp:/home/git/test.git
  • 现在我执行了push命令:
    git push test master

我总是得到

fatal: could not read from remote repository

Please make sure you have the correct access rights
and the repository exists.

我正在本地 Windows 7 机器上工作,想要上传到 Linux 服务器。
我可以通过 ssh 登录git用户。 我也尝试这样做root用户(让事情一次运行)得到相同的结果。
我从来没有被要求使用 sshpassword.

我真的不知道我做错了什么。
在你称其为重复之前,我搜索了很多这个问题,但似乎没有人谈论同样的问题。

update:

  • “which git”返回 /usr/bin/git
  • PATH echo 包括 /usr/bin
  • id_rsa 和 id_rsa.pub 文件均已设置且没有密码
  • ssh git@serverIp git-receive-pack 也可以工作并返回 /usr/bin/git-receive-pack
  • ssh git@serverIp ls /home/git/test.git 有效
  • 所有相关目录都是 chmod 755
  • git 是存储库的所有者
  • auth.log 文件在尝试推送命令时没有获取新条目
  • GIT_TRACE=2 git push test master 返回:

'C:\Program Files (x86)\PuTTY\plink.exe' '-batch' 'git@serverIp' 'git-receive-pack '\''/home/git/test.git'\''' 致命:无法从远程存储库读取。请确保您拥有正确的访问权限并且存储库存在。


在这种情况下,使用 openssh 而不是 putty 是关键。


原始答案(调试技巧)

我可以通过 ssh 登录git user.

这意味着这有效:

ssh git@serverIp

你确实有一个HOME定义的变量和 ssh 公钥/私钥(id_rsa / id_rsa.pub) in %HOME%/.ssh/.

这个问题 https://stackoverflow.com/a/13509396/6309建议使用不同的网址:

git remote set-url test git@serverIp:/home/git/test.git

确保您确实以 git 身份创建了 git 存储库(而不是以 root 身份创建,当您创建 git 帐户时,如这个问题 https://stackoverflow.com/q/15367016/6309).
ssh git@serverIp "which git"应该返回 git 可执行文件的路径。

还要检查所有父目录是否有相关的x为用户设置的(执行)位git或团体gitgroup, 跑步ls -ld /home /home/git /home/git/test.git.
此外,可以通过以下方式获取 git 命令的更多信息:

  • git push --verbose
    or:
  • GIT_TRACE=2 git push test master

如果您有带密码的 ssh 私钥,最好首先使用 ssh 私钥测试这些 ssh 命令not受密码保护,查看问题是否仍然存在。
或者,您可以保留受密码保护的 ssh 密钥,但是仔细检查你的.bashrc正如在这个答案中 https://stackoverflow.com/a/11918742/6309.


对于任何 ssh 连接问题(需要 git 的密码),请检查:

  • /var/log/auth.log,
  • an sshd 调试会话 https://serverfault.com/questions/130482/how-to-check-sshd-log

在你的情况下,因为它适用于ssh git@serverIp(交互式安全外壳),但不能使用 git (它打开非交互式安全外壳),看看这个线程 https://groups.google.com/forum/?fromgroups=#!topic/git-users/fdxAkWOTTC8,其中引用this one http://lists.apple.com/archives/macos-x-server/2008/Jun/msg00251.html:

当使用命令行启动 ssh 时,会启动一个非交互式非登录 shell。
然而...bash不使用$BASH_ENV在这种情况下,所以将其设置为~/.ssh/environment(例如,到/etc/profile)没有帮助。
bash 所做的是源码/etc/bashrc and ~/.bashrc.

确保/etc/profile确实定义了路径为git https://stackoverflow.com/a/15532349/6309,由于此处可以使用非登录帐户 https://stackoverflow.com/a/15651459/6309(这里似乎就是这种情况,因为ssh git@serverIp "which git"工作过,并且ssh git@serverIp "git --version"也应该)。

但也要检查正确的问题,并测试chmod 755 on /home, /home/git and /home/git/test.git.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

git推送到远程存储库“无法从远程存储库读取” 的相关文章

  • “git add”返回“致命:外部存储库”错误

    我刚刚进入 git 的奇妙世界 我必须提交我对程序所做的一系列更改 位于名为的目录中 var www myapp 我创建了一个新目录 home mylogin gitclone 从这个目录中 我做了一个git clone针对公共回购 我能够
  • 从 master 更改为新的默认分支 git

    这是一个场景 我们有一个默认的分支 Master 我们以此为基础 创建分支并向上推等等 我们现在创建了一个Develop分支Master并将其设置为默认开发分支 我想知道的是 我现在如何知道我的 git pull 命令是否通过命令行请求默认
  • 如何标记单个文件?或如何下载特定文件? - 胃肠道

    我想向文件添加标签以轻松下载该文件而不是整个分支 如何下载GIT中的特定文件 我不知道有什么方法可以标记特定文件git 对于第二个问题 如何下载特定文件git 仅当您的意思是 同时下载 时 以下内容才有效in a git存储库 这就是我理解
  • 在 GitHub 上执行拉取请求时避免不需要的合并提交和其他提交

    我在 Github 上分叉了一个项目 令远程上游为upstream我的远程存储库是origin 我当地的master分支设置为跟踪远程master分支 然后我在本地添加了一些东西master 时不时与上游汇合 直到今天我想发出pull re
  • 合并之间的 git rebase 会导致完全不相关的文件发生冲突

    我有一个大型 Git 存储库 几个月前引入了一个错误 我想bisect它 首先引入一个过去的提交 存储库 然后重播合并 做rebase到新的 commit 如下图所示 据我了解 由于合并 Git 似乎无法正常工作 预期的 但我想更好地了解为
  • git Branch -d :致命 - 无法查找 HEAD 的提交对象

    假设我在一个裸存储库 远程 中 如果我尝试使用以下命令删除分支git branch d
  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • TeamCity 将功能分支推送到主分支

    有没有办法将成功构建的功能分支推送到另一个分支 我想要这样的东西 Git 存储库 Gitorious GitHub 等 分支机构 master 当前项目的代码 质量保证 代码等待 QA 的分支 功能分支 许多远程分支 开发人员可以在其中开发
  • 将 RSA 与 Eclipse 远程系统资源管理器结合使用?

    我在 Windows 7 计算机上的 Eclipse 中使用远程系统资源管理器 RSE 插件 通过 SFTP 在远程 Linux 服务器上编辑文件 我在我的机器和 Linux 服务器之间设置了 RSA 密钥对 当我在 Cygwin 命令提示
  • Visual Studio Code 内置故事,用于查看 git 提交历史记录并对其内容进行比较

    In this https stackoverflow com questions 37899765 how can i view the git history in visual studio code 60013101 noredir
  • 在 Web 应用程序中显示最新的提交值?

    我有一些 Rails 应用程序 我使用 Git 作为版本控制系统 我使用 GitHub 或 Beanstalk 作为存储库主机 从理论上讲 我想要做的事情非常简单 以某种方式在 Web 应用程序的页脚中显示最新的提交 ID 号 哈希值 这样
  • Git:压缩 master 上提交的最简单方法[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 git 将最后 X 次提交压缩在一起 https stackoverflow com questions 5189560 how can i squash my last x commits
  • 致命:不是 git 存储库(或任何父目录):.git [重复]

    这个问题在这里已经有答案了 当我尝试推送 github com 上的现有存储库时 当我输入命令时 网站提示我将其输入终端 我收到了以下致命错误消息 Not a git repository or any of the parent dire
  • 允许 Amazon VPC A 访问 VPC B 上的新私有子网吗?

    我有一个现有的 VPC vpcA 并且最近设置了一个新的 VPC vpcB 同时具有私有子网 privateSubnet 和公共子网 publicSubnet 我想允许来自以下位置的连接vpcA to vpcB vpcB设置了堡垒服务器以允
  • 致命:无法将 HEAD 解析为有效引用

    我正进入 状态fatal Failed to resolve HEAD as a valid ref 每当我尝试承诺时 我努力了 echo ref refs heads master gt git HEAD 但它不起作用 也尝试过 git
  • 按时间顺序将多个文件夹提交到 git 中

    我有数百个网站备份 每个文件夹一个 我想将它们放入 git 存储库中 每个备份作为一个版本 这些变化主要涉及图像文件和每天 2 个数据库备份 大小约为 25 GB 并且不断增加 有没有办法告诉 git 获取其中一个文件夹并将其提交到存储库中
  • 如何将 GIT 调用的输出获取到批处理脚本中的变量中?

    我有一个 git 命令来获取当前存储库的最新 SHA 如下所示 git log pretty format H n 1 我有一个 Windows 批处理脚本 我想按如下方式使用它 SET CURRENT SHA 但我不知道如何将从 git
  • git 如何查找分支源自的提交哈希

    假设我从主分支分支到主题分支 然后在主题分支上进行了一些提交 是否有命令告诉我主题分支源自的主分支上的提交哈希 理想情况下 我不必知道我做了多少次提交 试图避免 HEAD 5 我已经用谷歌搜索过 但似乎无法找到答案 谢谢 use git m
  • 如何生成类似github的影响图?

    是否有一些程序 或者我错过的一些神奇的 git 插件 可以从 git 存储库获取影响图或类似的东西 而无需通过 github 就数据收集而言 我可以生成图表 我不确定从哪里开始编写自己的代码 我假设有一些标志我可以传递给 git log 来
  • 如何关闭分支而不将其从 git 的历史记录中删除?

    我想提交并关闭其分支 而不将其从历史中删除 有了水银我会commit close branch then update转到上一个 然后继续工作 有了 git 我很困惑 没有与 Git 中关闭分支完全相同的方法 因为 Git 分支比 Merc

随机推荐

  • 自动化测试游戏

    Question 您将如何向游戏添加自动化测试 我相信您可以对游戏引擎的许多功能 网络 对象创建 内存管理等 进行单元测试 但是是否可以自动测试实际游戏本身 我不是在谈论游戏玩法元素 比如神族会在地图 X 中击败虫族 而是在谈论游戏和引擎之
  • Moodle 有 API 吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想为 Moodle 创建一个定制的前端 有谁知道我可以从哪里获得API 或任何其他帮助 编辑 我已经
  • 在 Mgmt Studio 中修改数据库后重新导入/更新 SQL Server 数据库项目

    我的团队正在他们的解决方案中使用 NET 2008 DB 项目 因此我们有一些方法可以在机器之间以及通过开发来保持架构并保持一致 我更改数据库和跟踪所述架构的首选方法是通过 SQL Server Mangement Studio 基本上 我
  • Swift:对于 Double 值,“此类不符合键值编码...”

    我有一个场景 其中 Swift 中有一个简单的数据对象 包含多个属性变量 它们是混合的String and Double 值类型 我正在尝试使用检索每个属性的值valueForKey 我的代码看起来像这样 let myDataObj let
  • 验证失败后未添加类 field_with_errors 的 div 包装器

    我正在使用bootstrap sass宝石 我有一个验证 需要选择一个选择框 这是选择框 验证指定必须做出选择 但它确实include blank以便选择框一开始是空的 验证失败后 它应该是这样的 Rails 应该创建一个 div 来包装输
  • 更改选定且未聚焦的列表框样式,使其不灰显

    我有一个非常简单的 WPF ListBox 其 SelectionMode 设置为 Multiple
  • Next.js 服务器在运行“npm run dev”后停止几秒钟

    创建后Next js应用程序使用npx create next app和跑步npm run dev安装完成后 终端显示如下 准备好 启动服务器0 0 0 0 3000 url http localhost 3000 然后几秒钟后它停止并且没
  • ExecuteNonQuery:连接属性尚未初始化

    我收到以下错误 ExecuteNonQuery 连接属性尚未初始化 当运行以下代码时 Private Sub btnUpdate Click sender As Object e As EventArgs Handles btnUpdate
  • 如何使用 UIAutomation 获取主浏览器上的当前 url 地址?

    我有一个来源 承诺使用任何浏览器获取活动网址UIAutomation 但我对如何调用有困难main函数并在 a 中显示结果ListBox例如 那么 会怎样呢 这是我的代码 uses UIAutomationClient TLB active
  • 如何对 dotnet core 角度模板应用程序进行 dockerize?

    我使用 dotnet cli 角度模板创建了一个 Web 应用程序 dotnet new anguar Web 现在我想对这个应用程序进行 dockerize 我将以下 Dockerfile 添加到项目文件夹中 FROM mcr micro
  • Oracle 将字符插入字符串

    我有这个行表 RowA ABC123 DEF432 WER677 JKL342 如何使用 oracle 在记录之间添加 假设添加最后 4 个字符 RowA ABC 123 DEF 432 WER 677 JKL 342 你会尝试这样的事情
  • 我可以在Where 子句中使用Firebird DateAdd 函数吗?

    在火鸟中我可以使用DateAddwhere 子句中的函数 我有以下sql select s number s warranty start from serial number s where s warranty start gt dat
  • 如何建立一对多关系?

    我有以下型号 User id name network id Network id title 我需要添加什么样的 Rails 模型关联才能执行以下操作 user network title network users Thanks 所以网
  • 断点分组

    我正在 Visual Studio 2005 中开发一个基于 C Windows 的项目 我经常在这个巨大的项目中调试不同的功能 现在的问题是我在几个地方做了几个断点 只有在调试该功能时才需要这些断点 我想要然后禁用其他断点 我知道这可能不
  • 为什么我无法在 mac 操作系统上 pip install nltk?

    我正在使用 mac os mojave 安装 python 2 7 并使用 pip 安装python get pip py 我已经尝试使用这些命令来安装 pip pip install upgrade pip pip install nlt
  • INotifyPropertyChanged 以及不同对象上的派生属性

    最近我继承了一个用C 和WPF开发的相当大的项目 它使用绑定以及INotifyPropertyChanged用于将更改传播到视图或从视图传播更改的接口 一点前言 在不同的类中 我有依赖于其他属性的属性在同一个班 例如 考虑财产TaxCode
  • Fetch API如何在catch中获取响应体?

    我从服务器得到这样的响应 Request URL http api bfexchange net wallet balance Request Method GET Status Code 504 Gateway Time out Remo
  • 将 HTML 从内容脚本注入到页面中

    我正在构建一个 Chrome 扩展程序 并且需要在几个网站之上覆盖一个 html 块 目前我正在使用 JQuery Get从我的服务器中提取 html 为了提高性能 我想知道是否可以将 html 作为文件包含在扩展目录中并直接从那里访问源代
  • scala 开发人员如何处理带有 shapeless 的 scala 代码中不正确的 IDE(Idea) 错误

    这是一个带有具体例子的一般性问题 人们如何进入 Scala 并将其用于大型项目来处理工具 IDE 的不可靠性 您是否只接受源代码中的红色标记 我遇到了另一个 scala 代码库 其中工作代码被 idea 标记为红色Cannot resolv
  • git推送到远程存储库“无法从远程存储库读取”

    我搜索了一段时间 但找不到解决我的问题的方法 我有一个服务器 我可以使用用户名通过 ssh 连接到git和本地 git 存储库 现在我想将我的本地存储库推送到服务器上新创建的存储库 这是我所做的 创建了一个 git 存储库 home git