github使用基础

要通过终端绑定GitHub账号并进行文件传输,你需要使用Git和SSH密钥来实现安全连接和操作。以下是一个基本流程:

设置GitHub和SSH

  1. 检查Git安装 通过终端输入以下命令查看是否安装Git:

     

    bash

    复制代码

    git --version
    
  2. 配置Git用户名和邮箱

     

    bash

    复制代码

    git config --global user.name "Your Name"
    git config --global user.email "your_email@example.com"
    
  3. 生成SSH密钥 如果你还没有SSH密钥,需要生成一个。输入以下命令:

     

    bash

    复制代码

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    按照提示,选择默认位置保存密钥,并可以选择设置一个安全密码。

  4. 添加SSH密钥到SSH代理 启动SSH代理并添加私钥:

     

    bash

    复制代码

    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_rsa
    
  5. 复制SSH公钥 复制生成的SSH公钥,用于添加到GitHub。

     

    bash

    复制代码

    cat ~/.ssh/id_rsa.pub
    

    复制输出的内容(这是你的公钥)。

  6. 将SSH公钥添加到GitHub

    • 登录到GitHub账户。
    • 点击右上角头像进入Settings
    • Access下选择SSH and GPG keys
    • 点击New SSH key,输入标题并粘贴公钥,然后保存。

克隆仓库并传输文件

  1. 克隆GitHub仓库 切换到你要保存代码的目录,然后克隆仓库:

     

    bash

    复制代码

    git clone git@github.com:username/repository.git
    

    确保将usernamerepository替换为你的GitHub用户名和仓库名。

  2. 传输文件到仓库 将你要上传的文件复制到刚刚克隆的仓库目录中。

  3. 上传文件 进入克隆的项目目录,执行以下命令:

     

    bash

    复制代码

    git add .
    git commit -m "Add files"
    git push origin main
    

    如果你的默认分支不是main,请将其替换为正确的分支名称。

完成

现在,你已成功通过终端将文件上传到GitHub仓库。祝你使用顺利!如有问题可以随时问。

如何查看git的用户名和邮箱

@radix-vue

你可以通过以下命令在终端中查看Git的用户名和邮箱:

  1. 查看全局配置的用户名和邮箱

    全局配置适用于你计算机上的所有Git项目。使用以下命令查看:

     

    bash

    复制代码

    git config --global user.name
    git config --global user.email
    

    这些命令会分别输出配置的全局用户名和邮箱。

  2. 查看本地仓库的用户名和邮箱

    有时你可能为特定的Git仓库配置了不同的用户名或邮箱。在仓库目录中输入以下命令查看:

     

    bash

    复制代码

    git config user.name
    git config user.email
    

    这些命令会输出该仓库特定的用户名和邮箱配置。如果没有输出,说明该仓库没有单独配置用户名和邮箱,使用的仍然是全局配置。

通过这些命令,你可以确定当前Git配置的用户名和邮箱。

也就是说,是可以有多个git配置的邮箱和用户名的。

大文件存储

看起来你的项目可能正在使用Git LFS(大文件存储,Large File Storage),这是一种处理和存储大型文件的方法,在Git中进行版本控制时不适用于常规提交。出现你提到的这种情况,可能是因为以下原因:

原因

  1. LFS文件未上传: Git LFS用于存储大文件,所以这些文件会有一个指针记录在Git中,而真正的文件需要通过LFS上传和下载。

  2. 大文件传输: Git LFS使得大文件被分开传输,所以在推送时会看到Uploading LFS objects: 0%...之类的信息。

解决方案

  1. 确保安装和配置Git LFS: 确保你的系统上已经安装了Git LFS并且正确配置:

    • 安装Git LFS
      • 如果你使用Homebrew:brew install git-lfs
      • 如果是其他系统,参考Git LFS安装说明。
    • 初始化Git LFS(在仓库中执行一次):
       

      bash

      复制代码

      git lfs install
      
  2. 验证LFS配置: 确保LFS正确跟踪了你的大文件类型。例如,如果你追踪JPEG文件:

     

    bash

    复制代码

    git lfs track "*.jpg"
    
  3. 推送LFS文件: 在正常的git push后,Git LFS会自动处理大文件的上传。遵循以下步骤:

    • 确保所有LFS对象已经提交:git addgit commit.
    • 使用git push命令进行推送。
  4. 检查网络连接: 大文件传输可能耗时较长,确保有稳定的网络连接。

  5. 了解LFS配额: GitHub对LFS存储有配额限制。如果超过配额,需要增加存储空间或优化LFS的使用。

如果在上传LFS对象时遇到错误或异常,请检查你的Git LFS配置,查看命令行提示的具体错误信息,或者访问GitHub寻找相应的解决方案。

操作步骤

  1. 确保文件准备完毕

    确保所有需要上传的文件都已经准备好,并放在你克隆的仓库目录(blackhorse_headline)中。

  2. 导航到仓库目录

    打开终端并导航到克隆的项目目录:

     

    bash

    复制代码

    cd ~/Desktop/blackhorse_headline
    

    这里假设你把仓库克隆到了桌面上并进入了该目录。

  3. 检查当前状态

    使用以下命令检查当前的Git状态,查看哪些文件被修改或添加:

     

    bash

    复制代码

    git status
    

    这会显示哪些文件已被修改以及哪些文件是新添加的但未被跟踪。

  4. 添加文件到暂存区

    使用git add命令将这些文件添加到Git的暂存区,可以一次性添加所有文件:

     

    bash

    复制代码

    git add .
    

    该命令会将当前目录下的所有更改添加到暂存区。

  5. 提交更改

    提交已暂存的更改并附上有意义的提交信息:

     

    bash

    复制代码

    git commit -m "Add initial project files"
    

    确保提交信息清晰且描述了这次提交的目的。

  6. 推送更改到远程仓库

    使用git push将本地仓库的更改推送到远程GitHub仓库:

     

    bash

    复制代码

    git push origin master
    

    如果你的主分支是main而不是master,请替换相应的分支名称。

注意事项

  • 分支名称:请确认推送的目标分支名称与远程仓库一致,常见分支名为mastermain

  • 身份验证:如果使用HTTPS并被请求输入用户名和密码,确保输入的是GitHub用户名和生成的个人访问令牌(而不是账户密码),因为GitHub已经不支持直接使用账户密码进行Push和Pull。

  • 网络稳定性:推送涉及网络传输,确保网络状态良好,以避免中途中断。

通过这些步骤,你应该能够成功地将项目文件从本地上传到GitHub仓库,并可以在GitHub页面上查看提交详情。

  1. 更改远程URL为SSH

    将远程仓库URL从HTTPS更改为SSH:

     

    bash

    复制代码

    git remote set-url origin git@github.com:lucylin2019/blackhorse_headline.git

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

excel常用技能

1.基础技能 1.1 下拉框设置 a. 选中需要设置的列或单元格,数据 ---》 数据验证 b.验证条件 ---> 序列(多个值逗号隔开) 2.函数 2.1 统计函数-count a.count(区域,区域,......) 统计数量,只针…

Flipper Zero BadUSB反弹shell

Flipper Zero BadUSB反弹shell 前置知识点: Flipper Zero BadUSB 以及其他几个 BadUSB 设备使用用 DuckyScript 编写的有效负载。一种简单的脚本语言,用于执行导致键盘注入攻击的击键。 步骤 创建rev_shell_win.txt文件,并将其拖到badusb文件夹中. 相…

【GPTs】Email Responder Pro:高效生成专业回复邮件

博客主页: [小ᶻZ࿆] 本文专栏: AIGC | GPTs应用实例 文章目录 💯GPTs指令💯前言💯Email Responder Pro主要功能适用场景优点缺点 💯小结 💯GPTs指令 Email Craft is a specialized assistant for cra…

检测敏感词功能

今天策划给我一个任务 —— 检测昵称中是否含有敏感词功能,然后丢给我两个压缩包,我解压一看: 有的txt文件是一行一个词: 有的txt文件是按逗号分隔开: 不管是什么格式的总之量非常多,把我这辈子脏话都囊括…

【SpringBoot】19 文件/图片下载(MySQL + Thymeleaf)

Git仓库 https://gitee.com/Lin_DH/system 介绍 从 MySQL 中,下载保存的 blob 格式的文件。 代码实现 第一步:配置文件 application.yml spring:jackson:date-format: yyyy-MM-dd HH:mm:sstime-zone: GMT8datasource:driver-class-name: com.mysql.…

Coppelia Sim (v-REP)仿真 机器人3D相机手眼标定与实时视觉追踪 (三)

使用标定好的结果进行跟踪标定板的位置 坐标转换的步骤为: 1.图像坐标点转到相机坐标系下的点 2.相机坐标系下的点转为夹爪坐标系下的点 3.夹爪坐标系下的点转为机械手极坐标系下的点 跟踪的方式 1.采用标定板的第一个坐标点作为跟踪点 3.机器人每次移动到该点位&a…

easyui +vue v-slot 注意事项

https://www.jeasyui.com/demo-vue/main/index.php?pluginDataGrid&themematerial-teal&dirltr&pitemCheckBox%20Selection&sortasc 接口说明 <template><div><h2>Checkbox Selection</h2><DataGrid :data"data" style&…

运动【跑步 03】安踏冠军3的10KM和15KM*2体验(对比必迈PURE LIGHT)

这里写目录标题 1. 前言2. 两双鞋2.1 必迈 PURE LIGHT2.2 安踏 冠军 3 3. 主观对比4. 问题4.1 必迈 PURE LIGHT4.2 冠军 3 5. 总结 1. 前言 我是程序员&#xff0c;并不是专业的运动员&#xff0c;对跑步鞋的研究也不深&#xff0c;至今也就买过两双相对比较专业的跑鞋&#x…

O-RAN Fronthual CU/Sync/Mgmt 平面和协议栈

O-RAN Fronthual CU/Sync/Mgmt 平面和协议栈 O-RAN Fronthual CU/Sync/Mgmt 平面和协议栈O-RAN前端O-RAN 前传平面C-Plane&#xff08;控制平面&#xff09;&#xff1a;控制平面消息定义数据传输、波束形成等所需的调度、协调。U-Plane&#xff08;用户平面&#xff09;&#…

【JavaEE进阶】导读

本节⽬标 了解什么是JavaEE 在JavaEE中, 我们学习什么, 如何学, 难点是什么 一、Java EE 发展历程 Java EE(Java Platform Enterprise Edition), Java 平台企业版. 是JavaSE的扩展, ⽤于解决企业级的开发需求, 所以也可以称之为是⼀组⽤于企业开发的Java技术标准. 所以, 学习…

Javascript事件循环流程分析

基础概念 事件循环&#xff08;Event Loop&#xff09;&#xff1a;事件循环是JavaScript运行时环境中的一个循环机制&#xff0c;它不断地检查调栈用和任务队列。当调用栈为空时&#xff0c;事件循环会首先检查微任务队列&#xff0c;并执行其中的所有任务。只有当微任务队列…

单元/集成测试解决方案

在项目开发的前期针对软件单元/模块功能开展单元/集成测试&#xff0c;可以尽早地发现软件Bug&#xff0c;避免将Bug带入系统测试阶段&#xff0c;有效地降低HIL测试的测试周期&#xff0c;也能有效降低开发成本。单元/集成测试旨在证明被测软件实现其单元/架构设计规范、证明被…

【C++】C++的单例模式、跟踪内存分配的简单方法

二十四、C的单例模式、跟踪内存分配的简单方法 1、C的单例模式 本小标题不是讨论C的语言特性&#xff0c;而是一种设计模式&#xff0c;用于确保一个类在任何情况下都只有一个实例&#xff0c;并提供一个全局访问点来获取这个实例。即C的单例模式。这种模式常用于资源管理&…

LangGPT结构化提示词编写实践

基础任务 如果直接询问大模型strawberry有几个r&#xff0c;大模型会给出错误的答案&#xff1a; 这里我们引入思维连Chain of Thought&#xff0c;我们让大模型遍历一遍单词&#xff0c;每次累加得到最终结果 之前怎么都做不对的题&#xff0c;让大模型一步一步思考&#xf…

【Python系列】使用 Poetry 进行 Python 项目管理

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Linux内核USB2.0驱动框架分析--USB设备枚举过程

一 USB特点 1.1 USB协议版本介绍&#xff1a; USB1.0/1.1&#xff08;low/fullspeed&#xff09;&#xff1a;传输速率最大为12Mbps&#xff0c;是较早的USB协议版本。 USB2.0&#xff08;highspeed&#xff09;&#xff1a;传输速率最大为480Mbps&#xff0c;相比USB1.0/1.1…

解决ultralytics的YOLO模型训练中验证集Loss为NaN(或mAP为0)的问题

前言 在使用ultralytics库的YOLO模型时&#xff0c;比如YOLOv8进行目标检测模型训练&#xff0c;遇到一个非常奇怪的问题&#xff1a;训练过程中的验证损失&#xff08;loss&#xff09;出现了NaN&#xff0c;而验证的评价指标如mAP50却能正常计算&#xff08;有时mAP都也为0&…

微信支付现金红包,实现转账到零钱包功能

大家好&#xff0c;我是小悟。 上次说到微信商家转账到零钱要出新玩法&#xff0c;可能会对某些特定的业务产生影响&#xff0c;详细请阅读【微信商家转账到零钱新玩法&#xff0c;却是个不好接受的消息】。 微信支付还有个现金红包的产品&#xff0c;也可以实现转账到用户零…

掌握均值回归,外汇交易盈利新视角

外汇交易是全球金融市场的重要组成部分&#xff0c;它不仅用于国际间结算债权债务&#xff0c;还提供了一个充满盈利机会的金融市场。在这个市场中&#xff0c;货币价格的波动为投资者带来了丰富的交易机会。本文&#xff0c;EagleTrader将详细介绍外汇交易中的一种常用策略——…

mac-泛洪

泛洪攻击的类型 TCP SYN Flood&#xff1a; 攻击者向目标服务器发送大量的 TCP SYN 请求&#xff0c;但不完成握手过程。服务器为每个请求分配资源&#xff0c;最终可能耗尽其连接表&#xff0c;导致无法处理正常请求。 UDP Flood&#xff1a; 攻击者向目标发送大量的 UDP 数据…