github使用基础

news2024/11/14 12:00:15

要通过终端绑定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

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

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

相关文章

Python OpenCV孤立点检测

孤立点检测 在Python中使用OpenCV进行孤立点(异常点)检测,可以通过应用统计分析或者使用OpenCV的findContours和convexHull函数来识别。以下是一个简单的例子,使用OpenCV的findContours和convexHull来识别并绘制孤立点。 孤立点…

Vue自定义指令详解——以若依框架中封装指令为例分析

自定义指令 在Vue.js中,自定义指令提供了一种非常灵活的方式来扩展Vue的功能。以下是对Vue中自定义指令的详细解释: 一、自定义指令的基本概念 自定义指令允许开发者直接对DOM元素进行低层次操作,而无需编写大量的模板或者JavaScript代码。…

云渲染:服务器机房与物理机房两者有什么区别

云渲染选择服务器机房与物理机房两者主要区别在哪里呢? 服务器机房和物理机房作为云渲染的基础设施,各自扮演着不同的角色。 服务器机房的特点 服务器机房,通常指的是那些专门用于托管服务器的设施,它们可能位于云端&#xff0c…

即插即用篇 | YOLOv8 引入 代理注意力 AgentAttention

Transformer模型中的注意力模块是其核心组成部分。虽然全局注意力机制具有很强的表达能力,但其高昂的计算成本限制了在各种场景中的应用。本文提出了一种新的注意力范式,称为“代理注意力”(Agent Attention),以在计算效率和表示能力之间取得平衡。代理注意力使用四元组(Q…

机器学习基础02

目录 1.特征工程 1.1特征工程概念 1.2特征工程的步骤 1.3特征工程-特征提取 1.3.1字典特征提取 1.3.2文本特征提取 英文文本提取 中文文本提取 1.3.3TF-IDF文本特征词的稀有程度特征提取 2.无量纲化 2.1归一化 2.2标准化 2.3fit、fit_transform、transform 3.特征…

vue-h5:在h5中实现相机拍照加上身份证人相框和国徽框

1.基础功能 参考: https://blog.csdn.net/weixin_45148022/article/details/135696629 https://juejin.cn/post/7327353533618978842?searchId20241101133433B2BB37A081FD6A02DA60 https://www.freesion.com/article/67641324321/ https://github.com/AlexKrat…

【Elasticsearch入门到落地】1、初识Elasticsearch

一、什么是Elasticsearch Elasticsearch(简称ES)是一款非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到需要的内容。它使用Java编写,基于Apache Lucene来构建索引和提供搜索功能,是一个分布式、可扩展、近实…

Rust开发一个命令行工具(一,简单版持续更新)

依赖的包 cargo add clap --features derive clap命令行参数解析 项目目录 代码 main.rs mod utils;use clap::Parser; use utils::{editor::open_in_vscode,fs_tools::{file_exists, get_file, is_dir, list_dir, read_file}, }; /// 在文件中搜索模式并显示包含它的行。…

Xshell,Shell的相关介绍与Linux中的权限问题

目录 XShell的介绍 Shell的运行原理 Linux当中的权限问题 Linux权限的概念 Linux权限管理 文件访问者的分类(人) 文件类型和访问权限(事物属性) 文件权限值的表示方法 文件访问权限的相关设置方法 如何改变文件的访问权…

golang 实现比特币内核:公钥的 SEC 编码格式详解

比特币作为区块链的一个应用,它建立在分布式系统之上,‘节点’遍布全球。为了使所有节点协同工作并作为一个整体系统运行,需要保持所有节点同步在相同的状态中,也就是说节点之间需要频繁通信,并且相互交换大量数据消息。这要求在网络上传输的消息或数据要使用某种格式编码…

【JAVA】使用IDEA创建maven聚合项目

【JAVA】使用IDEA创建maven聚合项目 1.效果图 2.创建父模块项目 2.1删除父模块下面的src目录以及不需要的maven依赖 3创建子模块项目 3.1右击父模块项目选择Module… 3.2创建子模块 3.3删除子模块下不需要的maven依赖 4.子模块创建完成后引入SpringBoot依赖启动项目

《Django 5 By Example》阅读笔记:p17-p53

《Django 5 By Example》学习第2天,p17-p53总结,总计37页。 一、技术总结 1.数据库迁移 python manage.py makemigrations blog python manage.py sqlmigrate blog 0001 python manage.py migrate 2.ORM Django自带ORM。 3.view (1)定义 p42, …

基于物联网的智能超市快速结算系统

摘 要 当今社会的商品层出不穷,人们因为越来越多大型仓储超市的出现使得生活更加便利,但许多随之而来的新问题也给人们带来了许多的不便,例如商家一直被更换标签不及时、货物丢失、超市内物品更换处理不及时、超市内人流高峰期人流控制不得…

阿里云Linux安装Docker服务报错问题

今天使用了阿里云99计划的服务器,之前用惯了 CentOS,这次想体验下阿里云调教的 Alibaba Cloud Linux 3 系统性能,但是在安装 docker 的时候遇到了问题! 传统安装方式 之前习惯安装docker方式: #查看是否已经安装的D…

数据结构《链表》

文章目录 前言一、什么是链表&#xff1f;二、单向链表2.1 单向链表的个人实现2.2 单向链表的例题 三、双向链表3.1 双向链表的个人实现3.2 关于真正的java中提供的链表的使用 总结 前言 提示&#xff1a;概念来源于&#xff1a;>>LinkedList<< 一、什么是链表&am…

typesScript 制作一个简易的区块链(2)

pow 机制 1.哈希函数的特点 说到 pow 机制&#xff0c;就离不开哈希函数&#xff0c;哈希函数具有以下特点&#xff1a; 输入长度不固定&#xff0c;输出长度固定输入不同&#xff0c;输出不同输入相同&#xff0c;输出相同不可逆雪崩效应 雪崩效应&#xff1a;输入变量中只…

[Codesys]常用功能块应用分享-BMOV功能块功能介绍及其使用实例说明

官方说明 功能说明 参数 类型 功能 pbyDataSrcPOINTER TO BYTE指向源数组指针uiSizeUINT要移动数据的BYTE数pbyDataDesPOINTER TO BYTE指向目标数组指针 实例应用-ST IF SYSTEM_CLOCK.AlwaysTrue THENCASE iAutoState OF0: //读写完成信号在下次读写信号的上升沿或复位信号…

【树莓派raspberrypi烧录Ubuntu远程桌面登入树莓派】

提示&#xff1a;本文利用的是Ubuntu主机和树莓派4B开发板&#xff0c;示例仅供参考 文章目录 一、树莓派系统安装下载前准备工作下载安装树莓派的官方烧录软件imagerimager的使用方法 二、主机与树莓SSH连接查看数梅派IP地址建立ssh连接更新树莓派源地址 三、主机端远程桌面配…

Linux权限和开发工具(3)

文章目录 1. 简单理解版本控制器Git1. 如何理解版本控制 2. Git的操作2.1 Git安装2.2 Git提交身份2.3 Git提交命令2.4 Git版本管理2.5 Git下的同步 3. gdb命令3.1解决gdb的难用问题3.2 gdb/cgdb的使用 1. 简单理解版本控制器Git 1. 如何理解版本控制 我们在做项目的时候可能会…

如何在 Django 中生成 Excel 文件并上传至 FastDFS

文章目录 如何在 Django 中生成 Excel 文件并上传至 FastDFS需求背景主要任务 实现步骤 创建 Excel 文件上传 Excel 文件到 FastDFSclient.conf 保存文件 URL 到数据库组合完整的流程总结 如何在 Django 中生成 Excel 文件并上传至 FastDFS 在很多实际应用场景中&#xff0c;我…