03 【远程库操作】

03 【远程库操作】

1.推送到远程库

1.1 创建github仓库

创建新仓库 (github.com)

image-20221006163144237

1.2 创建远程库地址别名

git remote -v 查看当前所有远程地址别名

git remote add [别名] [远程地址]

image-20221006163319039

1.3 推送

git push [别名] [分支名]

image-20221006163529176

image-20221006163609629

2.加入团队并推送

2.1 克隆项目到本地

git clone 仓库地址

image-20221006164655915

效果

  • 完整的把远程库下载到本地

  • 创建 origin 远程地址别名

  • 初始化本地库

2.2 添加新成员加入团队

image-20221006164837999

image-20221006164827658

image-20221006165016543

image-20221006165030823

2.3 推送更新到远程库

1.更改用户名

image-20221006184421259

2.修改文件并提交到本地库

image-20221006170100066

3.推送到远程库

image-20221006184352833

image-20221006184333691

image-20221006184344102

3.远程库的 SSH 登录

在 Windows 10 系统中,凭据管理器为我们记录了 GitHub 的 Windows 凭据,再次从终端经过 GitHub 写数据时,可自动保持登录状态。但其他 OS 不一定有这样的功能,因此不便于频繁地提交版本。
为此,可以使用 SSH 登录的方式访问远程库。

不同于 SSH 登录,使用 HTTPS 的方式可以在多个 GitHub 帐号间管理仓库。

image-20220827231735884

3.1 在本地 Home 目录生成 GitHub 公/私钥

cd ~进入当前用户的根目录

rm -rvf .ssh 删除.ssh 目录

使用命令ssh-keygen -t <KeyType> -C <Annotation|AccountEmailAddress>在本地 Home 目录生成 GitHub 公/私钥。

ssh-keygen -t rsa -C dselgent@qq.com

image-20220827232018116

3.2 查看 .ssh 目录下的文件

cd .ssh

cat id_rsa.pub

image-20220827232355616

将秘钥全部复制

3.3 在 GitHub 配置该 SSH 公钥

登录 GitHub 账户后,进入Settings中的SSH and GPG keys项执行配置:

image-20220827232156887

image-20220827232550986

3.4 更改在本地的远程库地址

使用git remote set-url <Alias4RemoteRepositoryAddress> <RemoteRepositoryAddress>命令,将远程库地址由 HTTPS 方式切换为 SSH 方式:

image-20220827233228262

也可以直接添加一个新的别名origin_ssh

image-20221006192328180

随后,即可使用 SSH 的方式免密读写 GitHub 的内容。

image-20221006192705628

image-20221006192719254

4.解决冲突

4.1 冲突的产生

冲突的产生:本地仓库与线上不一致时未git pull就开始编写代码 并且在编写完代码后试图git push

image-20221006193046462

4.2 解决冲突

  • 要点
    • 如果不是基于 GitHub 远程库的最新版所做的修改,不能推送,必须先拉取。
    • 拉取下来后如果进入冲突状态,则按照“分支冲突解决”操作解决即可。
  1. 首先我要在两个本地库更改test2.txt中的内容

dselegent

image-20221006194022775

dselegent-gmail

image-20221006194132829

  1. dselegent推送到远程库

image-20221006194251330

image-20221006194305353

image-20221006194313397

  1. dselegent-gmail推送到远程库

image-20221006194350085

  1. dselegent-gmail中使用git pull origin master拉取最新的内容

pull=fetch+merge

git fetch [远程库地址别名]

git merge [远程库地址别名/远程分支名】

git pull [远程库地址别名] [远程分支名]

image-20221006194801202

image-20221006194846829

image-20221006195232425

  1. dselegent-gmail推送到远程库

image-20221006195309995

image-20221006195326732

image-20221006195334121

5.跨团队协作

这里先把dselegent-gmail退出团队用来做示例

  1. 点击右上角fork

image-20221006195537205

image-20221006200645023

  1. 克隆到本地

image-20221006200507493

  1. 修改文件推送到远程库

image-20221006200627526

  1. Pull Request

image-20221006200928505

image-20221006200916957

  1. dselegent中接收

    image-20221006201438135

image-20221006201507387

image-20221006201542512

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DSelegent

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值