使用命令行拉取 Git 仓库

1. 克隆远程仓库(首次获取)


# 克隆仓库到当前目录(默认使用 HTTPS 协议)
git clone https://github.com/用户名/仓库名.git# 克隆仓库到指定目录
git clone https://github.com/用户名/仓库名.git 自定义目录名# 使用 SSH 协议克隆(需要配置 SSH 密钥)
git clone git@github.com:用户名/仓库名.git# 克隆指定分支
git clone -b 分支名 https://github.com/用户名/仓库名.git

示例:


git clone https://github.com/octocat/Spoon-Knife.git
git clone -b develop git@github.com:vuejs/vue.git my-vue-project

2. 拉取最新代码(已有本地仓库)


# 进入本地仓库目录
cd 你的仓库目录# 拉取当前分支最新代码(默认拉取 origin 远程)
git pull# 拉取指定远程的指定分支
git pull origin 分支名

3. 关联远程仓库(本地已有项目)


# 初始化本地仓库
git init# 添加远程仓库地址
git remote add origin https://github.com/用户名/仓库名.git# 验证远程仓库是否添加成功
git remote -v# 首次拉取并合并代码
git pull origin master

4. 解决常见问题

权限拒绝(Permission Denied)


# 现象:
ERROR: Repository not found.
fatal: Could not read from remote repository.# 解决方案:
1. 检查 URL 是否正确
2. 使用 SSH 协议需配置密钥:- 生成密钥:ssh-keygen -t ed25519 -C "your_email@example.com"- 将公钥(~/.ssh/id_ed25519.pub)添加到 GitHub/GitLab
3. 或切换回 HTTPS 协议

目录已存在冲突


# 现象:
fatal: destination path 'xxx' already exists and is not an empty directory.# 解决方案:
1. 删除或重命名现有目录
2. 或指定新的目录名:git clone https://github.com/xxx/xxx.git new-folder-name

5. 高级操作

稀疏克隆(只拉取部分目录)


git clone --filter=blob:none --no-checkout https://github.com/xxx/xxx.git
cd xxx
git sparse-checkout init --cone
git sparse-checkout set dir1 dir2
git checkout main

拉取子模块


# 克隆包含子模块的仓库
git clone --recurse-submodules https://github.com/xxx/xxx.git# 已有仓库初始化子模块
git submodule update --init --recursive

各协议对比

协议类型URL 示例特点
HTTPShttps://github.com/user/repo.git无需配置密钥,需输入账号密码
SSHgit@github.com:user/repo.git需配置密钥,无需每次输入密码
GitHub CLIgh repo clone user/repo官方命令行工具,自动认证

常用工作流


# 完整克隆到本地
git clone https://github.com/user/repo.git
cd repo# 创建新分支
git checkout -b feature-branch# 开发完成后提交
git add .
git commit -m "完成新功能"
git push origin feature-branch

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/80999.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何禁止chrome自动更新

百度了一下 下面这个方法实测有效 目录 1、WINR 输入 services.msc 2、在Services弹窗中找到下面两个service并disable 3、验证是否禁止更新成功: 1、WINR 输入 services.msc 2、在Services弹窗中找到下面两个service并disable GoogleUpdater InternalService…

数据库事务以及JDBC实现事务

一、数据库事务 数据库事务(Database Transaction)是数据库管理系统中的一个核心概念,它代表一组操作的集合,这些操作要么全部执行成功,要么全部不执行,即操作数据的最小执行单元,保证数据库的…

【vue】【环境配置】项目无法npm run serve,显示node版本过低

解决方案:安装高版本node,并且启用高版本node 步骤: 1、查看当前版本 node -v2、配置nvm下载镜像源 1)查看配置文件位置 npm root2)找到settings.txt文件 修改镜像源为: node_mirror: https://npmmirro…

WPF之INotifyPropertyChanged实现

文章目录 引言INotifyPropertyChanged接口基础接口定义工作原理 基本实现方式标准实现示例CallerMemberName特性 高级实现技术基类实现通知多个属性变化使用PropertyChanging事件 MVVM框架中的实现MVVM模式简介MVVM框架中的实现Prism框架MVVM Light框架自定义MVVM基类 性能优化…

【MCP教程系列】SpringBoot 搭建基于 Spring AI 的 SSE 模式 MCP 服务

原文地址:https://developer.aliyun.com/article/1662946 在当今快速发展的AI技术背景下,如何高效地集成模型能力成为开发者关注的重点。本文将手把手教你如何基于 Spring AI 搭建支持 SSE(Server-Sent Events)模式的 MCP 服务 相…

springboot集成langchain4j实现票务助手实战

前言 看此篇的前置知识为langchain4j整合springboot,以及springboot集成langchain4j记忆对话。 Function-Calls介绍 langchain4j 中的 Function Calls(函数调用)是一种让大语言模型(LLM)与外部工具(如 A…

MySQL-数据库分布式XA事务

准备 innodb存储引擎开启支持分布式事务 set global innodb_support_axonMySQL数据库XA事务的SQL语法如下: XA {START| BEGIN} xid {JOIN | RESUME} XA END xid {SUSPEND [ FOR MIGRATE]} XA PREPARE xid XA COMMIT xid [ONE PHASE] XA ROLLBACK xid XA RECOVER 完…

SAP 运维-冷门问题解决办法

1.SAP Fiori帮助菜单链接如何配置? 答: 执行事务代码HELP_CONFIG,选择对应的Fiori部署模式,配置帮助菜单下的URL链接。 检查配置的帮助菜单,执行事务代码/N//UI2/FLP_CUS_CONF 或者SR13进行查看配置状态与修改。

新型智慧园区技术架构深度解析:数字孪生与零碳科技的融合实践

🏭在杭州亚运村零碳园区,光伏板与氢燃料大巴构成的能源网络,正通过数字孪生技术实现智能调度。这不仅是格力电器与龙源电力在新能源领域的创新实践,更是智慧园区4.0时代的标杆案例。当AI算法开始接管能源调度,当BIM建模…

Java转Go日记(三十六):简单的分布式

1.1.1. 简单的分布式server 目前分布式系统已经很流行了,一些开源框架也被广泛应用,如dubbo、Motan等。对于一个分布式服务,最基本的一项功能就是服务的注册和发现,而利用zk的EPHEMERAL节点则可以很方便的实现该功能。EPHEMERAL节…

机器学习笔记——特征工程

大家好,这里是好评笔记,公主号:Goodnote,专栏文章私信限时Free。本笔记介绍机器学习中常见的特征工程方法、正则化方法和简要介绍强化学习。 文章目录 特征工程(Fzeature Engineering)1. 特征提取&#xff…

在 Ubuntu 20.04.6 LTS 中将 SCons 从 3.1.2 升级到 4.9.1

在 Ubuntu 20.04.6 LTS 中将 SCons 从 3.1.2 升级到 4.9.1,可以通过以下步骤完成: 方法 1:使用 pip 安装(推荐) 步骤 1:卸载旧版本 SCons # 如果通过 apt 安装的旧版本,先卸载 sudo apt remov…

LeetCode热题100--234.回文链表--简单

1. 题目 给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 示例 1: 输入:head [1,2,2,1] 输出:true 示例 2: 输入&#xf…

【markdown】介绍如何在markdown中绘制流程图

在 Markdown 中编写流程图主要通过 ​​Mermaid 语法​​实现(多数平台如 GitHub、VS Code、Typora 已原生支持)。以下是详细方法: 1. 基础流程图​​ 语法结构 用 mermaid 包裹代码块,指定方向后定义节点和连接线&#xff1a…

Java中使用自定义序列化器:自动添加View字段的实现与应用

Java 中 BigDecimal 序列化器:自动添加 View 返回字段的实现与应用 在 Java 开发过程中,数据的序列化与反序列化是非常重要的环节。当我们处理数值类型数据,特别是BigDecimal类型时,有时需要在序列化输出中添加额外的视图字段,以满足前端展示或者特定业务需求。本文将通过…

Java类一文分解:JavaBean,工具类,测试类的深度剖析

解锁Java类的神秘面纱:从JavaBean到测试类的深度剖析 前言一、JavaBean 类:数据的守护者(一)JavaBean 类是什么(二)JavaBean 类的特征(三)JavaBean 类的使用场景(四&…

机器学习-- 线性回归、逻辑回归

线性回归 线性回归是一种统计方法,用于发现变量之间的关系。在机器学习背景下,线性回归可找出特征(Feature)与标签(Lable)之间的关系。 例如,假设我们想要根据汽车的重量预测汽车的每加仑汽油行驶里程(mpg),并且我们有以下数据集: 线性回归方程 Linear regressi…

Lua再学习

因为实习的项目用到了Lua,所以再来深入学习一下 函数 函数的的多返回值 Lua中的函数可以实现多返回值,实现方法是再return后列出要返回的值的列表,返回值也可以通过变量接收到,变量不够也不会影响接收对应位置的返回值 Lua中传…

TCP协议十大核心特性深度解析:构建可靠传输的基石

TCP(传输控制协议)作为互联网的"交通指挥官",承载着全球80%以上的网络流量。本文将深入解析TCP协议的十大核心特性,通过原理剖析、流程图解和实战案例,揭示其如何实现高效可靠的数据传输。 一、面向连接的可…

基于 Spring Boot 瑞吉外卖系统开发(十三)

基于 Spring Boot 瑞吉外卖系统开发(十三) 查询套餐 在查询套餐信息时包含套餐的分类名,分类名称在category表中,因此这里需要进行两表关联查询。 自定义SQL如下: select s.* ,c.name as category_name from setmeal…