如是我闻: git fetch
的作用是从远程仓库获取最新的更改,但不合并到本地分支。这事第一次听起来真挺奇怪的,为什么不直接 git pull
呢?让我们尝试用一个简单的例子来看看 git fetch
的作用。
场景:玩具盒和玩具店
背景
假设你今年五岁了,你有一个玩具盒,里面有你所有的玩具。你的老铁们也有他们自己的玩具盒,有时候他们会去玩具店买新玩具。
你在做什么?
你本来玩得很开心,但你听说你的老铁们从玩具店里买了很多新玩具。
你想知道他们买了啥,但不想马上把这些玩具拿到你的玩具盒里,因为你还没有决定是否真的喜欢这些新玩具。
这时你可以做什么?
你可以去玩具店看看朋友们买了哪些新玩具,但不把它们带回家。
git fetch
就是去玩具店看新玩具的过程
-
运行
git fetch
:就像你走到玩具店,看看有哪些新玩具。git fetch origin
-
结果:你看到老铁们买了哪些新玩具,但你还没有把这些新玩具放进你的玩具盒。
现在你可以做什么?
-
查看新玩具:你仔细看了看那些新玩具,决定是否想要它们。
git log origin/main
-
决定是否拿回家:如果你觉得这些新玩具贼拉带劲,你可以决定把它们带回家并放进你的玩具盒。
git checkout main git merge origin/main
总结
git fetch
:只是去看看有哪些新玩具(获取更新,但不合并)。- 查看新玩具:你可以看到新玩具,但它们还不在你的玩具盒里。
- 决定是否拿回家:如果你喜欢这些新玩具,你可以把它们放进你的玩具盒(合并更新)。
非常的有品
以上