将下载的 zip 与所做的一些更改合并回远程存储库

问题描述 投票:0回答:1

好吧,伙计们,我这里遇到了一个非常奇怪的情况。我在 GitHub 上有一个存储库,目前正在其中维护一个项目。另一个团队应该为该项目开发一些功能。他们的解决方法如下:

  1. 他们下载了 zip 格式的项目。
  2. 他们做了一些改变
  3. [我同时将一些更改推送到远程]
  4. 他们做了更多改变
  5. 该功能完成后,他们向我提供了更新的项目 zip

现在的问题是他们不应该提供zip,而是直接推送到github。 他们完全忽略了 git 部分。该 zip 也不包含我在第 3 点中推送的更改。现在我的问题是,如何将他们提供的代码与我的远程存储库合并?

我尝试了不同的东西,但真的没有运气。这里最好的选择是什么?我可以自己做这件事还是应该与其他团队联系?

任何帮助将不胜感激。

git
1个回答
0
投票

有两种方法可以实现这一目标。第一个选择是向他们解释实际的过程,让他们在本地文件夹中初始化 git,让他们解决合并冲突并在存储库中创建和实际提交。另一种方法是在您的计算机上手动修复此问题。

在您的计算机上修复此问题的过程是创建一个本地分支并手动合并它们的更改,如下所示:

  1. 在您的系统上本地创建一个新分支:
    git checkout -b some/branch/na,e
  2. 将工作目录的内容替换为发送给您的 zip 文件夹的内容
  3. 将所有更改添加到本地 git:
    git add .
  4. 提交更改:
    git commit -m 'Changes from external contributor'
    (当然此消息可以更改为您想要的任何内容)
  5. 将您的实际代码合并到此分支中:
    git merge main
    (假设您最近的更改已提交并推送到名为
    main
  6. 的分支)
  7. 解决可能的合并冲突
  8. 如果解决了冲突,请创建另一个提交:
    git commit
  9. 将更改推送到远程:
    git push -u origin some/branch
  10. 在 Github 上创建拉取请求,将更改合并回主开发分支

我强烈建议尝试让贡献者执行选项 1。这也使他们将来能够自己执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.