【问题标题】:How to get the code in my IDE to reflect an accepted pull request from someone else如何在我的 IDE 中获取代码以反映其他人接受的拉取请求
【发布时间】:2023-03-31 19:35:01
【问题描述】:

一段时间以来,我一直在自己编写代码并将代码推送到 GitHub,但最近另一位开发人员提出了 PR,我接受了它。现在,因为我在 VSCode 中的文件没有反映他所做的微小更改,所以我有点担心推送我所做的新更改。它会覆盖他的更改吗?

我知道这是一个非常基本的问题,但说实话,搜索起来有点困难。我想我真的没有语言可以用更短的“谷歌搜索”方式提出问题。

如果有人能帮忙,谢谢!

【问题讨论】:

  • 我认为这就是分支的用途,所以当您想要更改某些内容时不要总是使用主分支,而是创建一个新分支,然后在完成后将其合并到主分支中。然后,您可以在尝试合并时处理覆盖问题。
  • 或者,也许您可​​以隐藏您的更改,拉入包含所有最新更改的主分支,然后手动将您的更改添加到该分支中,然后提交。
  • 告诉我们这是什么存储库。

标签: git github pull-request


【解决方案1】:

推送新的本地更改会覆盖他的更改吗?

没有*

如何将合并 PR 中的更改导入到我的 IDE 中?

git pull

说明

问题中暗示到目前为止,您的工作流程类似于:

此后定期:

  • 将这些更改从本地推送到 GitHub (git push)

对于单个贡献者(您),文件的本地副本始终与远程文件同步(或在它们之前,在提交之后和推送之前)。

让我们看看新的本地更改会发生什么,并且您想将其推送到远程,看看它是否会破坏拉取请求的更改:

$ git push
To github.com:username/repo.git
 ! [rejected]        main -> main (non-fast-forward)
error: failed to push some refs to 'github.com:username/repo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Git 中止,什么也没做。帮助文本包括要采取的措施:

在再次推送之前集成远程更改(例如'git pull ...')

git pull 将更新您的本地分支,并更新磁盘上的文件以匹配,整合远程所做的更改。这是“将代码放入我的 IDE”的步骤

因此,所有需要的是:

$ git pull
$ git push

如果从远程拉取时发现合并冲突,请注意解决它们以将远程和本地上的更改集成到并行的相同文件中。

* - 除非你强制推送,否则不要这样做:)

【讨论】:

  • 写的很好,解决了我的问题!谢谢你:)
猜你喜欢
  • 1970-01-01
  • 2017-02-13
  • 2011-07-30
  • 2019-01-06
  • 2017-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-21
相关资源
最近更新 更多