赞
踩
本地开发分支同步主分支代码的具体命令:
- # 切换到dev分支(确保当前处于开发分支,待同步主分支代码)
- git checkout dev
-
- # 拉取(检索)远程仓库中的所有分支和标签的最新状态,但是不与本地分支合并
- git fetch --all
-
- # 将远程master分支的更改合并到当前的dev分支
- git merge origin/master
-
- # 将合并后的代码推送到远程dev分支
- git push origin dev
如果出现合并冲突,则需要解决冲突文件才能合并成功。
- git add <file-with-conflict>
- git commit -m "Resolve merge conflict between master and develop"
如下命令会有执行结果的差异,同步master分支应该用第二个命令
- # 1、将origin分支和master分支合并到当前所在的分支中
- git merge origin master
-
- # 2、将origin远程仓库的master分支合并到当前所在的分支中
- git merge origin/master
从上面看出,git merge可以合并多个分支,用空格分开。
git stash
命令用于将当前工作目录的未提交更改暂存起来,以便稍后再恢复。
- # 1、将当前工作目录中的更改暂存起来(未提交的)。
- git stash
- # 将当前工作目录中的未提交更改保存为一个临时的存储,然后将工作目录恢复到干净的状态。
-
- # 2、查看已暂存的更改列表
- git stash list
- # 将会列出当前存储区中保存的所有暂存的更改。
-
- # 3、恢复暂存的更改到工作目录
- # 将最新的暂存更改应用到工作目录中
- git stash apply
- # 将第n个暂存的更改应用到工作目录中
- git stash apply stash@{n}
- # 将指定的暂存区中的更改应用到当前工作目录中,但是不会将暂存的更改从存储区中删除。
-
- # 4、恢复并删除暂存的更改
- # 将最新的暂存更改应用到工作目录中并移除暂存区
- git stash pop
- # 将第n个暂存的更改应用到工作目录中并移除暂存区
- git stash pop stash@{n}
- # 将指定的暂存区中的更改应用到当前工作目录中,并将其从存储区中删除。
-
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
简言之,获取分支提交信息,但是不合并代码。
fetch 用于从远程仓库中获取最新的提交信息,但不合并或修改本地仓库中的文件。
"git fetch"命令会将远程仓库中的新提交拷贝到本地仓库中,但这些提交在本地仓库中并不会进行合并,只是将最新的提交信息保存在本地,需要手动调用其他命令(如"git merge"或"git rebase")来将这些变更合并到本地分支上。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。