git pull和rebase之间的区别是什么



我试图理解git pull和rebase之间的区别,但在任何地方我都能找到merge和rebase的区别。

我理解merge和rebase之间的区别,但我担心pull和rebase作为both bring the latest changes from remote repositories to our local repository. 的区别

我说得对吗?

git pull是两个git命令的包装器:git fetch后跟git mergegit rebase(带有--rebase选项)。

这是一个方便的命令,因此您可以获取最新的更改,而不必命名远程跟踪分支来使用pullrebase引入新的更改。

两者都将最新的更改从远程存储库带到我们的本地存储库。

这是不对的。git rebase将不会连接到远程存储库。如果你想进行比较,以下是合理的:

git mergegit rebase

git fetch && git mergegit fetch && git rebase

git pullgit pull --rebase

(后两行用于比较相同的功能)。

我是GIT的新手,也在努力理解这些术语的意义,所以想把我的2位添加到它中。

GIT PULL:我从git pull中了解到,它有点聪明,并试图为你做一些额外的工作。因此,假设您在本地存储库中进行了一些更改并提交了这些更改,那么在执行git pull命令之后,它将执行两件事

  git pull origin Dev-1.0 // Dev-1.0 is my remote branch
  1. 它将从远程带来所有最新的更改,并通过调用git fetch更新本地。

  2. 它还将为您进行代码的隐式合并(额外工作),当存在任何由您更改、提交并在存储库中更新的文件时,合并就会出现,然后在这种情况下,GIT尝试合并这些更改。如果它无法成功合并这些更改,那么您将遇到一些必须手动解决的冲突。

GIT回扣:另一边的GIT重基准将从远程带来所有最新的更改,并将其应用于本地,然后将其倒回原始状态,如果您有任何提交,则它将把它们放在旁边

GIT专家,如果你认为我的答案不正确或需要修改,请随时投反对票,但请不要忘记添加你的宝贵意见。

相关内容

最新更新