git学习笔记(十六)--git的远程版本库
1. 关于远程分支:
在之前的使用和学习中,我们知道想要将本地的分支推送到远程版本库时,在首次推送时必须指明分支,也就是:
git push origin master 推送master分支到origin版本库
在推送之后,就建立的本地分支和版本库对应分支的关系,下次Push的时候,就可以把该分支本地的更新push到版本库中去了。
git ls-remote --heads URL 查看远程版本库的所有分支
git branch -r 查看本地的远程分支
需要注意的是,远程分支不是真正意义上的分支,不能直接针对远程分支进行checkout,必须先建立远程分支对应的本地分支,才能修改。
2. 关于分支追踪:
当基于远程分支创建了本地分支后,就对远程分支有了追踪能力。可以完成:
(1)git push的时候,会把该分支的更新push到共享版本库中
(2)git pull的时候,会把版本库中该分支对应的更新fetch过来然后Merge
注意一点,基于本地分支创建的分支,没有追踪能力。(一般也不会这么用)
但是可以使用参数--track创建一个本地分支来追踪另外一个本地分支:
git checkout --track -b hello hello.x
这样helo就可以追踪hello.x的变化了
3. 关于远程版本库:
一般我们不会只使用一个版本库,可能同时要跟几个版本库进行数据交互。
git非常人性化的一点就是,对于不同的版本库,使用不同的存储路径,这样保证了即使不同版本库有相同的分支名称(比如都有master)也不会造成混乱。
(1)如何注册新的远程版本库:
git remote add new-remote URL new-remote是名字,URL是地址
(2)查看已注册版本库的名称:
git remote -v
(3)获取新的版本库内容:
git fetch new-remote
(4)更爱远程版本库地址(如果其变动了):
git remote set-url new-remote URL
(5)更改远程版本库名称:
git remote rename new-remote new-new-remote
(6)获取远程版本库的更新内容:
git remote update
(7)删除远程版本库:
git remote rm new-new-remote
4. 关于PUSH和PULL在多个远程版本库下使用:
关于PUSH:
一般情况下,我们要在git push后带上版本库的名字和对应分支的名字进行推送,这样针对性强一些,下面解释一下不带参数的git push的执行过程:
① 如果当前分支设置了<remote>,则执行git push 相当于 git push <remote>
② 如果当前分支没有设置<remote>,则执行git push相当于git push origin
③ 默认对所有在该远程版本库中有对应分支的进行推送操作
关于PULL:
最好带上版本库名字和对应分支名字,精确一些
默认git pull也是执行git pull origin,如果设置了<remote>,执行git pull remote
5. 关于里程碑和远程版本库:
远程版本库中里程碑显式的同步到本地后,并不会向分支那样使用不同的路径来保存,而是保存在一起,这样会造成命名的困扰。
这也是一个有待改进的地方,因此需要在团队合作中,对tag的使用严谨和有意义。
浙公网安备 33010602011771号