G--2 git远程仓库的使用

1.git远程仓库

1.1常用托管服务[远程仓库]

在软件开发的协作与版本控制流程中,远程仓库是核心基础设施,它承担着代码存储、团队共享、历史追溯和协同开发的关键作用。常用的远程仓库托管服务,根据其定位(公有 / 私有)、生态整合能力和目标用户群体,可分为以下几类,以下为你详细解析其核心特点、适用场景及关键功能:

GitHub:https://github.com

码云:https://gitee.com

服务名称核心特点适用场景关键功能
GitHub1. 全球最大的代码托管平台,开源生态最完善
2. 与主流开发工具(VS Code、Jenkins)深度整合
3. 内置 CI/CD 工具(GitHub Actions)、项目管理(Projects)、讨论区(Discussions)
4. 支持 Git LFS(大文件存储),适合包含设计图、数据集的项目
1. 个人开源项目展示与协作
2. 全球团队跨地域协作
3. 需要强 CI/CD 自动化的项目
4. 希望借助开源生态吸引贡献者的项目
- 分支保护(防止误推主分支)
- Pull Request(PR)代码审查
- Issue 跟踪(bug / 需求管理)
- GitHub Pages(静态网站部署,如项目文档)
GitLab(SaaS 版)1. 开源内核(GitLab CE),支持公有托管与私有部署
2. 「一站式 DevOps 平台」:集成代码托管、CI/CD、容器 registry、监控、安全扫描
3. 对私有仓库的免费额度更友好(免费版支持 5 人以内私有项目)
4. 权限管理更精细(支持组、子组、项目级权限控制)
1. 中小型团队的私有项目协作
2. 需要整合 DevOps 全流程的团队(无需额外搭建工具链)
3. 对数据隐私有一定要求,但不想自建服务器的团队
- GitLab CI/CD(配置简单,支持多环境部署)
- 内置容器 registry(存储 Docker 镜像)
- 代码质量分析(SonarQube 集成)
- 安全扫描(依赖漏洞检测、代码漏洞扫描)
Gitee(码云)1. 国内托管服务,访问速度快(无需科学上网)
2. 与 GitHub 功能相似,但更贴合国内开发者习惯(如支持微信登录、中文界面)
3. 提供「码云企业版」,支持私有部署和本地化服务
4. 与国内工具生态整合(如阿里云、腾讯云、华为云)
1. 国内个人 / 团队的代码托管(避免网络延迟)
2. 对数据本地化有要求的企业(如国企、传统行业)
3. 需要对接国内云服务的项目
- 码云 Pages(支持 Jekyll、Hexo)
- 合并请求(MR)与代码审查
- 企业级权限管理(角色、部门隔离)
- 本地化部署支持(私有服务器)


1.2注册码云

码云:https://gitee.com

根据码云网址去创建一个码元账号

1.3创建远程仓库

创建好码云账号后 点击+号创建仓库

1.4配置SSH密钥

  • 生成ssh公钥
  • ssh-keygen -t rsa

  • gitee设置账户公钥
  • cat ~/.ssh/id_rsa.pub

  • 在gitee设置中配置公钥

  • 验证是否配置成功
  • ssh -T git@gitee.com

1.5操作远程仓库

1.5.1添加远程仓库

命令:git remote add <远端名称> <仓库路径>

  • 远端名称,默认为origin,取决于远端服务器设置
  • 仓库路径,从远端服务器获取此URL
  • 例如git remote add origin git@gitee.com:wangt100/gitee.git

1.5.2查看远程仓库

命令:git remote

1.5.3推送到远程仓库

  • 命令:git push [-f] [--set-upstream] [远端名称【本地分支名】【:远端分支名】】
  • 如果远程分支名与本地分支名称相同,则可以只写本地分支
  • git push origin master
  • --set-upstream推送到远端的同时并且建立起和远端分支的关联关系
  • git push  --set-upstream origin master
  • 如果当前分支与远端分支关联 则可以省略分支名与远端名
  • git push 将master分支推送到以关联的远端分支

1.5.4本地分支与远程分支的关联信息

  • 查看关联关系我们可以使用git branch -vv命令

1.5.5从远程仓库克隆

  • 命令:git clone <仓库路径> [本地目录]
  • 本地目录可以省略,会自动生成与个目录

1.5.6从远程仓库抓取或者拉取

远程仓库和本地的分支一样,我们可以进行merge操作,只是需要先把远端仓库里的更新都下载到本地,在进行操作。

  • 抓取命令:git fetch [remote name] [branch name]
  • 抓取指令就是将仓库里的更新都抓取到本地,不会进行合并
  • 如果不指定远端名称和分支名,则抓取所有并更新当前分支
  • 拉取命令:git pull [remote name] [branch name]
  • 拉取指令就是将远程仓库的修改拉到本地进行合并,等同于 fetch+merge
  • 如果不指定远端名称和分支名,则抓取所有并更新当前分支

1.5.7解决合并冲突

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值