git:远程仓库

远程仓库是指托管在网络服务器上的项目仓库.
可能会有好多个项目仓库,其中有些你只能读,另外有些可以写。同他人协作开发某个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展。

 

假设远程仓库有一个默认远程分支 dev 。如果将其克隆为本地库:
git 会自动将远程仓库命名为 origin ,并拉下所有的数据
同时创建一个 dev 远程分支的指针,即远程跟踪分支 origin/dev
创建一个默认远程分支的本地副本,命名为同名的跟踪分支 dev


注:

1.前面的 “origin” 是一个远程仓库。该仓库的所有分支被称为远程分支。

2.远程跟踪分支是本地仓库中指向远程仓库中远程分支的指针,因此名字使用了 “ 远程仓库名 / 远程分支名 “ 的形式。

远程跟踪分支就像书签,提醒你在上次网络通信时,相应远程分支位于远程仓库的何处

这些远程跟踪分支是指向远程分支的远程引用,而不是本地的引用,因此,本地的分支操作没办法使它们移动。

这些远程引用,在每次与远程仓库进行网络通信时, git 会移动它们,以确保它们准确地表示了远程仓库的状态。

3.跟踪分支:从远程跟踪分支自动创建的本地分支 ( 它跟踪的远程分支称为“上游分支” ) 。


创建一个新仓库的操作如下:

1.假设现在在github上创建了一个远程仓库,名为 hexoTest

2.创建Personal access tokens (classic) 个人令牌

3.初始化本地仓库

4.添加远程服务器(与远程仓库建立连接)

注:
1).local :新添加一个本地仓库并取的别名(一般设为 origin)
2).url:github上的http协议远程仓库对应的地址

5.git remote -v 查看当前本地仓库连接有哪些远程仓库


 

6.git fetch 下载所有远程分支的对象和引用


 

如果命令后加上路径: git fetch origin dev 只会用远程分支 dev 更新远程跟踪分支 origin/dev (注意local和origin名字)

7.git merge local/dev –allow-unrelated-histories
它的本意就是提醒你注意了,这是俩不同的库.要合并了,要注意了.
此时才创建了跟踪分支,把远程仓库的文件拉取到本地仓库


8.假设现在在本地仓库做了一次提交


9.推送本地分支
把本地的 dev 跟踪分支推送到远程仓库 origin 的 dev 远程分支上:
git push local dev:origin dev (from:to)

如果本地仓库名local也设置为origin,可简化命令为 git push origin dev

为了操作方便,建议设置为origin


注意:
1.最好 本地分支 是 远程分支 的
快进合并

2.不带参数的 git push 会默认推送当前分支

3.git push -u local dev (-u 是 –set-upstream的简写)
在你
第一次提交你的分支的时候使用。它会像git branch –set-upstream一样在本地分支与远程分支去建立联系。
通常我们在新建分支的时候,一定要显式建立这种联系。
-u 参数指定本地 dev 分支设置为跟踪分支,会跟踪远程跟踪分支 origin/dev ,从而也跟踪了 github 上的远程分支 dev

4.后面的推送就可以不加 -u 参数

10.推送成功后可见远程仓库对应有了改变


 

11.可以使用 push 来删除远程仓库的远程分支
git push origin –delete 分支名

其他:
pull = fetch + merge

//git fetch 三种情况
1.在当前分支不能fetch分支名相同的分支

2.在当前分支可以fetch分支名不同的分支 (快速合并情况)

3.当远程分支和本地分支分叉时
fetch下来再手工merge

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值