与远程 Git 存储库同步(获取、拉取、更新)
最后修改时间:2023 年 9 月 11 日在通过将更改推送到上游来共享工作结果之前,您需要与远程存储库同步以确保项目的本地副本是最新的。您可以通过以下方式之一执行此操作:获取更改、拉取更改或更新项目。
Git分支弹出窗口指示分支是否有尚未获取的传入提交:
获取更改
当您从上游获取更改时,自上次与远程存储库同步以来提交的所有新数据都会下载到本地副本中。这些新数据不会集成到您的本地文件中,并且更改不会应用于您的代码。
获取的更改存储为远程分支,这使您有机会在将它们与文件合并之前查看它们。由于fetch不会影响你本地的开发环境。这是获取远程存储库所有更改更新的安全方法。
有两种方法可以从上游获取更改:
选择Git | 在主菜单中获取。
或者,打开“分支”弹出窗口并单击右上角。
观看此视频可更好地了解 IDE 中如何执行获取操作。
更新分支
如果您需要将特定分支与其远程跟踪分支同步,请使用更新。这是获取并随后将更改应用到所选分支的便捷快捷方式。
在“分支”弹出窗口或 版本控制工具窗口的“分支”窗格中,选择一个分支并从上下文菜单中选择“更新” 。
IntelliJ IDEA 将从远程分支中提取更改,并将它们变基或合并到本地分支,具体取决于在设置|中选择的更新方法。版本控制 | 吉特.
拉动变更
如果您需要从另一个分支而不是其远程跟踪分支获取对当前分支的更改,请使用pull。当您拉取时,您不仅下载新数据,还将其集成到项目的本地工作副本中。
转到Git | 拉。“拉取更改”对话框打开:
如果您有一个多存储库项目,则会出现一个附加下拉列表,供您选择存储库。
如果您为项目定义了多个遥控器,请从列表中选择一个遥控器(默认情况下为
origin
)。选择要将更改拉取到当前签出的分支的分支。默认情况下,选择当前本地分支跟踪的远程分支。如果您指定不同的分支,IntelliJ IDEA 将记住您的选择并在将来默认显示该分支。
如果您需要使用选项拉取,请单击“修改选项”并从以下选项中进行选择:
--ff-only
:只有可以快进时,合并才会被解决。--no-ff
:在所有情况下都会创建合并提交,即使可以将合并解析为快进。--squash
:将在当前分支之上创建包含所有拉取更改的单个提交。--no-commit
:将执行合并,但不会创建合并提交,以便您可以在提交之前检查合并的结果。
有关
pull
选项的更多信息,请参阅https://git-scm.com/docs/git-pull。单击“拉动”。
更新您的项目
如果您有多个项目根目录,或者希望每次与远程存储库同步时从所有分支获取更改,您可能会发现更新项目是更方便的选择。
当您执行更新操作时,IntelliJ IDEA会从所有项目根和分支中获取更改,并将跟踪的远程分支合并到本地工作副本中(相当于pull)。
笔记
如果您的项目包含子模块,并且它们位于分支上,它们也会自动更新。
如果子模块处于分离的 HEAD状态,IntelliJ IDEA 将调用
git submodule update
,这将检查根存储库中引用的提交。这意味着仅当根存储库中的子模块引用发生更改或添加新的子模块时才会执行更新。
前往VCS | 更新项目或按。“更新项目”对话框打开。Ctrl0T
选择更新类型(此策略将应用于 Git 版本控制下的所有根):
如果您选择以后不显示“更新项目”对话框,然后想要稍后修改默认更新策略,请转到“版本控制”|“更新项目”对话框。IDE设置的 确认页面,在调用这些命令时显示选项对话框下选择更新,并在下次执行更新时修改更新策略。CtrlAlt0S
更新操作完成后,Git工具窗口 中将添加 “更新信息”选项卡。它列出了自上次与远程同步以来所做的所有提交,并允许您以与“日志”选项卡中相同的方式查看更改。Alt09
提示
如果您想查看自上次更新以来修改的所有文件的完整列表,请将插入符号放在提交列表中的任意位置,然后按。您可以禁用分组以查看平面列表:单击“更改的文件”窗格中的工具栏。Ctrl0A
感谢您的反馈意见!