Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git从ZIP文件推送到其他服务器,而不连接到原始主机_Git_Bash - Fatal编程技术网

Git从ZIP文件推送到其他服务器,而不连接到原始主机

Git从ZIP文件推送到其他服务器,而不连接到原始主机,git,bash,Git,Bash,我想将文件从我们的GIT存储库推送到另一台服务器,这台服务器已经可以正常工作了。但是,这需要由无法访问我们的GIT存储库的人来完成。所以我建议我把存储库中的文件以ZIP文件的形式发送给他,但是他怎么能把这些文件推送到另一台服务器呢 解压文件 启动GitBash git初始化 git远程添加UATssh://username@ip_地址:端口 git-fetch-UAT 吉特推 当我使用添加文件时,GIT无法识别存储库中的文件 吉特补充道 git提交-m“消息” 我将尝试推送它们,然后我将从GIT

我想将文件从我们的GIT存储库推送到另一台服务器,这台服务器已经可以正常工作了。但是,这需要由无法访问我们的GIT存储库的人来完成。所以我建议我把存储库中的文件以ZIP文件的形式发送给他,但是他怎么能把这些文件推送到另一台服务器呢

  • 解压文件
  • 启动GitBash
  • git初始化
  • git远程添加UATssh://username@ip_地址:端口
  • git-fetch-UAT
  • 吉特推
  • 当我使用添加文件时,GIT无法识别存储库中的文件

  • 吉特补充道
  • git提交-m“消息”
  • 我将尝试推送它们,然后我将从GIT收到一条消息,我需要提取数据,当我这样做并调用GIT pull-r UAT master时,我将得到合并冲突。我想要实现的就是将数据从ZIP文件推送到服务器(并覆盖它)

    我怎样才能做到这一点


    谢谢

    您可以执行以下步骤:

  • 将文件解压缩到一个新文件夹中(我们将此文件夹称为a
  • 将原始存储库克隆到另一个文件夹中(我们将此文件夹称为B
  • 使用工具(如Windows上的ROBOCOPY)将a中的内容镜像到B中,确保覆盖文件,将新文件从a添加到B,并删除B中a中不存在的文件
    • 注意确保在此镜像过程中不要触摸
      .git
      文件夹。如果您使用ROBOCOPY,您将添加
      /xd.git
  • git添加
  • git提交
  • git推送
  • 这将完成你开始做的事情

    注意这里有一个时间问题。如果其他人在您将新提交克隆到此处之后但在推送之前将其推送到远程存储库中,您将在步骤6中得到推送拒绝。如果你明白了这一点,那么我会严肃地质疑你在做什么,因为你已经清楚地说过,拥有zip文件的人应该覆盖存储库,而你却允许其他人处理相同的文件。这是灾难的秘诀


    如果您只向此人发送部分文件,则需要将步骤3修改为:

  • 使用工具将文件从a复制到B

  • 在这种情况下,如果使用这种繁琐方法工作的人正在重命名或删除文件,您需要通过将您首先发送给他的一个或多个zip文件与当前存档中的文件进行比较来处理此问题,并处理差异。

    我不确定,因为这种情况很奇怪,但我认为你应该先将UAT/master合并到本地master,然后再进行其他操作。(备注:
    pull
    =
    fetch
    ->
    merge
    ,因此您可以执行
    git-pull-UAT-master
    ,它也应该可以工作)尝试重新设置基础并解决冲突。然后试着用力推。