协作者如何将他们的更改推送到我在 GitHub 中的存储库

Posted

技术标签:

【中文标题】协作者如何将他们的更改推送到我在 GitHub 中的存储库【英文标题】:How can collaborators push their changes to my repo in GitHub 【发布时间】:2018-04-11 01:43:21 【问题描述】:

    首先我在 Eclipse 中创建了一个项目并使用以下命令提交到我的 GitHub:

    git init
    git add .
    git commit -m "first commit"
    git remote add origin URI of my repo
    git push -u origin master

    然后我在 Eclipse 中修改了一个文件,并通过创建远程并提供 repo 的远程 URI 从 Eclipse 提交到 GitHub。

    我通过添加协作者添加了我的团队成员。 然后他下载了我的项目并在 Eclipse 中更改了一个文件。

现在,他如何将修改后的文件从 Eclipse 中推送到我的 GitHub 存储库?

我们做了一件事。他创建了一个遥控器并提供了我的仓库的 URI。但我们仍然无法提交该文件。

【问题讨论】:

如果是master分支,那是因为master是受保护的,只有所有者才能在master分支上推送一些更改。你看到了什么错误? 能否请您在推送代码时发布错误?可能他的本地分支与远程分支不同步。 error:" $ git push -u origin master To github.com/Itcinfotech-Github/NewRepo.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'github.com/Itcinfotech-Github/NewRepo.git' 提示:更新被拒绝,因为远程包含您所做的工作提示:本地没有。这通常是由另一个存储库推送提示引起的:到同一个参考。您可能希望首先集成远程更改提示:(例如,'git pull .. .') 在再次推送之前。提示:有关详细信息,请参阅“git push --help”中的“关于快进的说明”。” 【参考方案1】:

我已经通过在我的本地文件夹中克隆 repo、将项目添加到 eclipse 并更改提交的文件来解决问题。

在此之前,您必须将该人添加为协作者。以便他/她可以使用以下命令克隆您的仓库:

git clone "Path to the repository"

【讨论】:

每个人都可以在 GitHub 上克隆你的 repo,除非它是私有的。您的解释似乎遗漏了一些细节。【参考方案2】:

您需要add your colleague as a collaborator。这可以通过Settings > Collaborators 在所需的 GitHub 存储库中完成(您需要再次输入密码)。之后他们拥有those 权限。

更新

对不起,早上好;)

我忽略了您已将您的合作伙伴添加为合作者。导致您遇到这种情况的另一个可能原因可能是在 Temporary interaction limits 中,您可以在其中将与您的存储库的交互限制为之前的贡献者。

如果这没有帮助。请添加一些有关您同事的 git 日志的更多信息。

更新 2

@Rahul K 关于您的评论(您最好将其添加到您的问题中,以便更快地识别),您的同事首先需要通过 git pull origin master 集成远程更改,以便之后能够推送他或她的更改。但请注意,他或她可能需要将任何冲突迁移到你们都应用了更改的文件。

最好的问候,大卫

【讨论】:

以上是关于协作者如何将他们的更改推送到我在 GitHub 中的存储库的主要内容,如果未能解决你的问题,请参考以下文章

如果我在我的计算机上本地更改项目名称,我可以将我的代码推送到同一个 GitHub 存储库吗?

使用 Git Bash/Terminal 将文件推送到 Github 存储库的特定目录

作为 Azure DevOps 中发布管道的一部分,将更改推送到 GitHub 存储库

如何通过 GitKraken 将标签推送到 Github

浅克隆后推送到 github

在 Android Studio 中更改 Github 帐户