运行`git pull --rebase`,它针对什么进行rebase?

t98cgbkg  于 2023-09-29  发布在  Git
关注(0)|答案(3)|浏览(125)

我看到很多这样的例子:
git pull --rebase
但我想知道哪个分支合并到当前分支中。应该是git pull --rebase <master>还是git pull --rebase <dev>

lzfw57am

lzfw57am1#

它首先获取origin/theBranch,然后在origin/theBranch之上重定更改的基。
用素描:

  • git pull --rebase之前:
*--*--*--*--A <- origin/theBranch
             \
              M--Y <- theBranch   # your local branch
  • git pull --rebase步骤1:git fetch
*--*--*--*--A--B--C--D <- origin/theBranch
             \
              M--Y <- theBranch
  • git pull --rebase步骤2:git rebase origin/theBranch
*--*--*--*--A--B--C--D <- origin/theBranch
                      \
                       M'--Y' <- theBranch
tcomlyy6

tcomlyy62#

它将首先git fetch,就像git pull总是做的那样。然后,它将不运行git merge,这将从当前本地和远程分支创建合并提交,而是运行git rebase,并在远程跟踪分支的最新提交之上重放对**当前本地分支所做的更改。

git-pull-从另一个仓库或本地分支获取并集成。
git-rebase- Forward-port本地提交到更新后的上游头部。

现在我想,
git pull --rebase = git fetch + git rebase,用于跟踪上游分支
用例:假设你和你的队友正在同一个分支上开发一个新功能。他做了一些改变,并将它们推到远程。现在,您需要获取并重定分支的基,以合并他的更改。
您也可以使用git pull --rebase <currentBranch>代替git pull --rebase
如果你明确地想要将另一个分支的更改合并到你的本地分支,那么你可以使用git pull --rebase <otherBranch>

mwngjboj

mwngjboj3#

在使用其他人的仓库时,有几个基本的Git命令需要记住:

git clone
git fetch
git merge
git pull

这些命令在与远程存储库交互时非常有用。clonefetch将远程代码从存储库的远程URL下载到本地计算机。merge用于将不同人的工作与您的工作合并在一起,pull是fetch和merge的组合。
我们将在下面深入讨论这些命令。

克隆

要获取另一个用户的仓库的完整副本,可以像这样使用git clone:

git clone https://github.com/USERNAME/REPOSITORY.git

克隆仓库到您的计算机

克隆存储库时,您可以从多个不同的URL中进行选择。登录到GitHub时,这些URL位于存储库详细信息下方:运行git pull --rebase,它针对什么进行rebase?

相关问题