GIT 拉取master到指定分支

情况:

        1. master有更新时

        2. 分支是以master创建的

git status 先确定当前分支是否有变化,如果有就先push更改

git add .
git commit -m "xxx"
git push

 当status是没有改动时,切换本地master

git checkout master

然后pull远端master的变化下来到本地master

git pull origin master

然后确定看到是现在版本的master,切换到自己分支,合并master到自己分支

git checkout test
git merge test

然后自己分支就是最新版本了

===========其他情况============

当直接使用

git pull origin master

之后,进入rebase的话,先退出变基

git rebase --abort

然后查看git status,如果是以下结果

$ git status
On branch test
Your branch and 'origin/test' have diverged,
and have 23 and 1 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)

nothing to commit, working tree clean

这个消息意味着你当前所在的分支是 test,这个分支与远程仓库中的 origin/test分支有所不同。本地 test分支和远程 origin/test分支分别有 23 个和 1 个不同的提交。你需要合并这些更改,以使两个分支保持同步。

要解决这个问题,你可以尝试以下步骤:

  1. 确保你的工作目录是干净的。如果有未提交的更改,请先提交或存储这些更改。
  2. 使用 git fetch 命令更新远程仓库的引用。这将下载远程分支的最新更改,但不会自动合并到你的本地分支。
  3. 使用 git merge 命令将远程分支的更改合并到你的本地分支。这将创建一个新的合并提交,将两个分支的更改组合在一起。如果有冲突,你需要解决这些冲突并提交更改。
git fetch
git merge origin/test

如果你遇到冲突,请解决这些冲突,然后运行 git add 将解决冲突后的文件添加到暂存区,最后使用 git commit 创建一个新的合并提交。在这之后,会有输出

Merge made by the 'recursive' strategy.

这是一个通知,告诉你 git merge 命令已经成功地合并了远程 origin/test分支的更改到你的本地 test分支。'recursive' 策略是 Git 默认的合并策略,用于在合并时处理多个分支的更改。

现在你已经完成了合并,你可以继续在本地分支上工作。如果你需要将这些更改推送回远程仓库,你可以使用 git push 命令。

如果在合并过程中没有出现冲突,这意味着 Git 能够自动解决分支之间的差异。如果在合并过程中遇到冲突,Git 会提示你解决这些冲突,然后提交更改。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值