【问题标题】:Error with git configuration for web deployment用于 Web 部署的 git 配置错误
【发布时间】:2023-03-09 21:53:01
【问题描述】:

我正在尝试根据here. 提供的说明为 Web 部署目的配置 Git。但是,在事情开始出错之前,我只能进行第二步。

现在说明说要输入以下内容:

git remote add myServer myUsername@ServerHostname:~/path/to/myRepo.git

所以我继续插入

git remote add xxxyyy user@XXX.XXX.XX.XXX:/var/myRepo.git

因为我已经按照指示在我的 web 目录之外创建了 repo。但是,这样做会得到以下结果:

fatal: Not a git repository (or any of the parent directories): .git

所以我不确定我是否误解了命令语法中的某些内容或什么,但我很困惑。就具体细节而言,我希望部署到的环境是我使用 Digital Ocean 设置的 VPS,而我希望在其中开发和部署的环境是 Xubuntu 虚拟机。

编辑:在 VonC 最亲切的帮助下,问题已得到解决。感谢所有做出贡献的人!

【问题讨论】:

    标签: git repository virtual-machine web-deployment vps


    【解决方案1】:

    您需要在本地存储库(您要部署的存储库)中才能执行该命令。

     cd /path/tpo/your/local/repo
     git remote add xxxyyy user@XXX.XXX.XX.XXX:/var/myRepo.git
    

    然后您将能够在服务器上推送(并填充)裸仓库:

     git push -u myServer master
    

    (仍然从本地 repo 文件夹执行)

    注意-u:我喜欢在你的本地master和你的服务器repo master之间建立一个远程跟踪分支关系,特别是当远程repo为空的时候。
    见“Why do I need to explicitly push a new branch?
    之后,一个简单的 git push 就足够了。

    【讨论】:

    • 啊,好吧。这些说明似乎没有提到已经有本地回购。那么,我只是要在我的网站文件所在的目录中创建一个裸存储库吗?
    • @user968270 不,您在本地需要一个非裸机,即带有工作树的机。一个裸露的用于服务器,供您推送(裸露意味着没有工作树,这意味着远程工作树和您正在推送的分支之间没有差异的风险):bitflop.com/document/111
    • @user968270 在htmlpreview.github.io/?https://github.com/sitaramc/… 上查看更多关于什么是裸仓库的信息。
    • 我在我的 web 目录中本地初始化了一个 Git 存储库,并应用了构成说明中第二步第一部分的“远程添加”命令。我没有费心运行 push 命令,因为此时存储库是空的,所以继续执行第三步,按照说明克隆存储库,顺利进行。但是,当我进入第四步并输入“env -i git pull --ff-only origin master”时,我收到错误“致命:找不到远程参考主控”。
    • @user968270 正常:只有在至少有一次提交时才会创建 master。没有提交,没有分支(master 或其他)
    猜你喜欢
    • 2012-09-13
    • 2013-01-31
    • 1970-01-01
    • 2011-06-18
    • 2014-07-19
    • 2011-11-27
    • 2016-11-11
    • 2015-01-13
    • 2016-04-26
    相关资源
    最近更新 更多