背景
项目应用中习惯性的创建了一个用于本地开发dev分支,后推送到了服务器端。此时服务器端有两个分支(master,dev),一开始的操作基本上都是在本地dev分支开发测试结束后,会阶段性的上传代码到服务器端的dev分支,测试轮次性bug测试通过后再merge到远程的master分支。
在正常的操作中经常会有这样的操作,无意间光标会打到开发文件的某个已打开的文件中,有可能会将对应的文件进行未知的修改。因此会在再次处理这部分代码前检查是否有改动项。此时用到一个命令git diff,用来检查当前分支下的本地环境代码都有哪些文件被改动了。由于我本地的这个dev分支起始时创建完直接推送到了远程,并没有与之进行依赖追踪。也就是说pull不到远程分支dev中的代码。唯一的办法就是从同级依赖分支中merge过来对应的代码。对于简单的功能处理或者随时处理完会删除的分支这样无所谓就直接操作了,但是如果是一个有周期的代码,设计别人的提交改动,那么你就必须获取这个你们共享分支的最新代码,而不是从其他同级分支中获取“过期的有效代码”。为此特此纪要!
问题
如何将本地分支与远程指定的分支进行关联?
说明
这个问题的出现是在我diff检查是否有差异文件时遇到的一个问题,报错明文中其实给出了操作代码。
处理方案
解决这个问题其实就是将你本地操作的分支代码置为最新的状态,然后指定远程分支进行捆绑,这样就能将这条分支进行远程分支的跟踪了。
处理命令如下:git branch --set-upstream-to=origin/远程分支的名字 本地分支的名字
这个命令其实有个前提,如果你已经在指定分支中了,此时可以省略本地分支的名字,像下面这样:
git branch --set-upstream-to=origin/远程分支的名字