git - git pull 和 git pull origin 有什么区别
问题描述
我有一个父分支origin/develop
,从这个分支我创建了一个子分支feature/NewFeatureBranch
我现在正在feature/NewFeatureBranch
使用git checkout feature/NewFeatureBranch
现在我已经完成git pull
并且可以看到几个新的分支下载到我的本地机器上,它们都有父级develop
在另一种情况下,我已经完成了git pull origin develop
,在这种情况下,从其他分支新签入的文件develop
正在下载。
它git pull
的行为git fetch
和git pull origin develop
行为一样吗git fetch + git merge
?
解决方案
文档的第一句话:
在其默认模式下, git pull 是
git fetch
后跟 git merge的简写FETCH_HEAD
。
所以git pull
只是简写。Git 对您的意思做了一些假设,并提供了缺失的部分。因此,默认情况下,它的简写是:
git fetch
git merge <remote-tracking-branch-that-current-branch-tracks> [into the current branch]
同样,如果你真的给了一个遥控器和一个分支,你仍然是在说:
git fetch remote
git merge remote/branch [into the current branch]
您可以更改速记的含义(作为config
设置的一部分),例如改为rebase
代替merge
,但大多数人不这样做。一般来说,有些人认为最好不要说git pull
,而是直接说 thefetch
和然后,如果需要,明确地说 themerge
或 the或任何东西。rebase
这使您有机会“环顾四周”并决定如何进行。
推荐阅读
- gnuplot - 如何在 gnuplot 中将 yerror 或 yerrorbar 与linespoints 和其他参数一起使用?
- r - 安装后找不到R包
- azure-active-directory - Get-AzureADServicePrincipal 需要哪些权限?
- r - 使用 rsconnect:deployApp 保证应用部署的脚本
- sql - 试图从 Access 表升迁到 SQL Server 链接表。代码可在 Access 中正常工作,但在连接到 SQL 时会出现“ODBC 调用失败 3146”
- python - 绘制多边形时如何在 Matplotlib 中将颜色值分配给顶点而不是面颜色?
- xamarin.forms - 如何正确处理 Xamarin.Forms Android 应用程序的版本和设置?
- verilog - 使用 one-hot 信号设置寄存器
- json - SharePoint 列格式 - 可能是大写或小写文本的条件?
- python - 如何在 Python 中将字符串转换为布尔值