分支的意义
在团队合作进行代码编写工作的时候,可以使用新建分支的方法来进行管理本地的代码,开发到一定程度的时候再同步到git上。
分支概念
在git中,head指向的是目前所在的分支,master一般指的是我们目前代码库的主分支,每次commit都是在原来这一条分支上进行延伸,伸展出来一个又一个的节点。
如果在某个节点新建了分支dev,那么这个节点就会出现分叉,切换到dev分支后提交的每次commit都是在这个分支上进行延伸
分支操作
在简单的情况下,进行分支的合并,能够汇总我们的改动结果到master上,使用的命令为:git merge [branch],用于合并指定分支到当前分支;此时为“快进模式”,也就是直接把master指向dev的当前提交。
但是,如果master已经出现跟dev中对同个文件的改动的提交了,那么此时会出现冲突。git status也可以告诉我们冲突的文件。
悟了悟了
团队合作时,常规的git操作:
revert清除掉目前所有不需要的文件改动commit本次所需要提交的改动stash暂存目前还不想提交的改动(push完之后可以把他们放回来)- 使用
fetch,然后rebase,这样子正常来说我们的提交指针就可以在远程仓库的后面了 - 最后
push!