【问题标题】:git pull fatal error server repogit pull 致命错误服务器 repo
【发布时间】:2012-03-18 12:05:38
【问题描述】:

我的目标是在我的实验室服务器上设置一个 repo,我可以通过 ssh 在我的笔记本电脑上克隆它。我仍然想要服务器上的工作副本。这是我所做的:

服务器:

mkdir 我的项目

git --init

(添加一些文件并提交它们,使其不为空)

git clone --bare ~/myProject/.git/ ~/git/myrepo.git

笔记本电脑:

git clone erin@labserver.edu:/home/erin/myrepo.git

git 添加文件1

git 提交

git 推送

服务器:

git 拉

然后我得到这个错误:

致命:你今天想从哪里获取?

您知道可能出了什么问题吗?我尝试按照分支/分段/重新定位方向here,但它没有解决问题。还有

git pull origin master

也没有解决。

【问题讨论】:

    标签: git git-pull


    【解决方案1】:

    我已按照您列出的步骤进行操作,但无法重现您遇到的错误 (fatal: Where do you want to fetch from today?)。但是,如果您按照问题中写出的步骤进行操作,server 没有任何远程存储库 - git pull 将不起作用,因为server 没有任何远程可以拉从。我认为这是您遇到错误的原因。

    目前,您拥有三个存储库:在 服务器 上:myProjectmyRepo笔记本电脑 myRepo(克隆自 @987654328 @)。如果我对问题的理解是正确的,您想使用myProjectserver)和myRepoLaptop)来工作。我假设你有myRepo(在server)作为你可以git pushgit pull的集结地;您已经正确地做到了,因为您已将其设置为 --bare 存储库,这是一个明智之举。

    如果您按照triad 在他的回答中的说明进行操作,您最终会得到两个存储库:server,这是一个--bare 存储库,以及laptop。如果您愿意重新设置存储库,我会按照triads 的说明进行操作,如下所示:

    1. 在某处创建一个--bare 存储库。这将是一个集结地。称之为有用的东西,比如bareRepository 或其他东西。
    2. 您有一个包含一些工作的存储库。在该存储库中(在serverlaptop 上),将bareRepository 添加到您的遥控器列表中:git remote add <name> <url>
    3. git push 您的工作从 (2) 中的存储库到 bareRepository。这将确保bareRepository 是最新的等等。
    4. 因为您无法使用bareRepository,所以在没有工作存储库的计算机上再次克隆它(serverlaptop)。因为你正在克隆bareRepository,git 会将bareRepository 视为origin;您可以 git push origingit pull origin 满足您的需求,而不会用工作树弄乱存储库。
    5. 一旦您设置了两个工作存储库(一个在laptop,一个在server)和一个--bare 存储库(在laptopserver),您应该能够同步你的工作愉快:
      • 做一些工作
      • git commit作品
      • git push origin - 将工作交给裸仓库
      • 在另一台计算机上:git pull origin 以更新您的分支。

    【讨论】:

      猜你喜欢
      • 2012-06-17
      • 2016-03-11
      • 2019-02-02
      • 2023-03-14
      • 2011-06-02
      • 2017-07-02
      • 2018-12-10
      • 2023-03-08
      • 2015-02-20
      相关资源
      最近更新 更多