当前位置: 首页 > news >正文

Git 本地项目上传 GitHub 全指南(SSH Token 两种上传方式详细讲解)

前言:Git 与 GitHub 的区别与联系

在学习如何将本地项目上传到 GitHub 之前,先来弄清楚 GitGitHub 的区别以及它们之间的联系。

对比项GitGitHub
定义分布式版本控制系统(DVCS),用于本地和远程管理代码版本托管 Git 仓库的在线平台
作用负责代码的版本管理,包括提交、回滚、分支管理等允许用户在云端存储、协作和管理 Git 仓库
使用方式在本地安装并使用 Git 命令行或 GUI 进行代码管理通过浏览器或 Git 连接远程仓库,进行托管和协作
是否需要联网不需要,可在本地使用需要联网,用于远程仓库管理
是否依赖 GitHub不依赖,Git 可独立使用依赖 Git,GitHub 是基于 Git 构建的

Git 是一个本地的版本控制工具,而 GitHub 是一个在线代码托管平台,GitHub 依赖 Git 进行版本控制,Git 也可以在本地独立使用,但通常两者结合使用以便于代码同步、协作和备份

开始前,你需要:

  1. 安装 Git:未安装请参考我的另一篇教程 👉 手把手教你如何在Windows上安装Git并连接GitHub

  2. 注册 GitHub 账号:GitHub 官网


一、创建 GitHub 仓库

  1. 登录 GitHub 官网。

  2. 点击右上角的 +,选择 New repository(新建仓库)。

    在这里插入图片描述

  3. 填写 仓库名称(Repository name),可选填写 描述(Description)。

  4. 选择仓库可见性:

    • Public(公开):所有人都能看到该仓库。
    • Private(私有):只有你和你授权的用户能访问。
  5. 不要勾选 Initialize this repository with a README,否则后续 git push 可能会遇到冲突。

在这里插入图片描述

本图出自 Github如何上传项目(超详细小白教程) 四、Github的上传:第二步

  1. 点击 Create repository 创建仓库。

    在这里插入图片描述


二、本地项目上传至 GitHub(方法一:使用 SSH 认证 | 推荐)

1. 生成 SSH 密钥

在 Git Bash 终端输入以下命令(替换 your-email@example.com 为你的 GitHub 邮箱):

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

提示:执行后会提示你输入文件保存路径,直接回车即可(默认~/.ssh/id_rsa)。然后会要求你输入密码,可直接回车跳过,接着会要求你再次输入密码进行确认,再次回车跳过即可。

2. 添加 SSH Key 到 GitHub

  1. 运行以下命令复制 SSH Key:

    cat ~/.ssh/id_rsa.pub
    
  2. 复制输出的 SSH Key,并进入 GitHub SSH Key 管理页面,点击 New SSH Key

    在这里插入图片描述

  3. 填写相关信息,如下图,最后点击 Add SSH key(添加 SSH 密钥)。

    在这里插入图片描述

  4. 填写 GitHub账号 密码,点击 Confirm

    在这里插入图片描述

3. 在本地初始化 Git 仓库

如果你的项目文件夹还未初始化 Git 仓库,可以执行以下命令:

cd /path/to/your/project  # 进入你的项目目录
git init  # 初始化 Git 仓库

这样,Git 就会在当前目录创建一个 .git 文件夹,代表该目录已成为一个 Git 仓库。

在这里插入图片描述

4. 关联远程仓库

在 GitHub 创建仓库后,会看到类似以下的 git remote add 命令,请复制并在终端执行(替换为你的 GitHub 仓库地址):

git remote add origin git@github.com:your-username/your-repository.git

在这里插入图片描述

可以用以下命令检查远程仓库是否添加成功:

git remote -v

如果返回 origin 及对应的 GitHub 地址,则说明添加成功。

在这里插入图片描述

5. 添加、提交和推送代码

  1. 添加所有文件到 Git 版本控制,执行以下命令:

    git add .
    # 或者添加特定文件,例如:
    git add main.py
    
  2. 提交代码,提交时需附带说明信息:

    git commit -m "初次提交代码"
    
  3. 确认推送分支,首次推送时,需要设置 mainmaster 分支:

    # 确保主分支是 main(如果你的 GitHub 仓库默认是 master 则将 main 改为 master)
    git branch -M main  
    
  4. 推送代码到指定分支:

    git push -u origin main
    

    在这里插入图片描述

  5. 代码已成功推送至 GitHub 仓库,您可以前往 GitHub 仓库页面查看。


三、本地项目上传至 GitHub(方法二:使用 Token 认证)

1. 生成 Personal Access Token (PAT)

  1. 进入 GitHub 个人访问令牌管理页面,点击 Generate new token

    在这里插入图片描述

  2. 填写相关信息,如下图。

    在这里插入图片描述

  3. 点击 Generate token 生成 Token

    在这里插入图片描述

  4. 复制个人访问令牌并保存好,下面会用到。

    在这里插入图片描述

2. 在本地初始化 Git 仓库

如果你的项目文件夹还未初始化 Git 仓库,可以执行以下命令:

cd /path/to/your/project  # 进入你的项目目录
git init  # 初始化 Git 仓库

这样,Git 就会在当前目录创建一个 .git 文件夹,代表该目录已成为一个 Git 仓库。

在这里插入图片描述

3. 关联远程仓库

在 GitHub 创建仓库后,会看到类似以下的 git remote add 命令,请复制并在终端执行(替换为你的 GitHub 仓库地址):

git remote add origin https://github.com/your-username/your-repository.git

在这里插入图片描述

可以用以下命令检查远程仓库是否添加成功:

git remote -v

如果返回 origin 及对应的 GitHub 地址,则说明添加成功。

在这里插入图片描述

4. 添加、提交和推送代码

  1. 添加所有文件到 Git 版本控制,执行以下命令:

    git add .
    # 或者添加特定文件,例如:
    git add main.py
    
  2. 提交代码,提交时需附带说明信息:

    git commit -m "初次提交代码"
    
  3. 确认推送分支,首次推送时,需要设置 mainmaster 分支:

    # 确保主分支是 main(如果你的 GitHub 仓库默认是 master 则将 main 改为 master)
    git branch -M main  
    
  4. 推送代码到指定分支:

    git push -u origin main
    
  5. 输入刚才复制的 Token,点击 Sign in

    在这里插入图片描述

  6. 代码已成功推送至 GitHub 仓库,您可以前往 GitHub 仓库页面查看。


结语:Git 上传 GitHub 的更多实用操作

恭喜您!现在您已经掌握了如何使用 SSH 认证Token 认证 将本地项目上传到 GitHub 🎉。在实际开发中,我们还需要掌握一些常见的 Git 命令,以提高 Git 版本控制的效率。

🎯 Git 常用命令总结

操作命令
删除 .git 目录(重置仓库)Remove-Item -Recurse -Force .git (Windows) / rm -rf .git (Linux/macOS)
强制推送(覆盖远程)git push --force
初始化 Git 仓库git init
添加远程仓库git remote add origin <仓库地址>
克隆仓库git clone <仓库地址>
查看当前状态git status
查看提交历史git log --oneline --graph --decorate --all
添加文件到暂存区git add .
提交代码git commit -m "提交信息"
推送代码到远程仓库git push -u origin main
拉取远程最新代码git pull origin main
创建新分支git checkout -b new-branch
切换分支git checkout branch-name
合并分支git merge branch-name
删除本地分支git branch -d branch-name
删除远程分支git push origin --delete branch-name
撤销 git addgit reset HEAD file.txt
撤销最近一次提交(保留更改)git reset HEAD~1
撤销最近一次提交(删除更改)git reset --hard HEAD~1

现在,您已经完全掌握了 Git 基本操作,并能顺利将代码上传到 GitHub!希望这篇教程能帮助您更好地使用 Git 进行版本控制,祝您编码愉快 🚀!

相关文章:

  • 代码随想录刷题攻略---动态规划---子序列问题1---子序列
  • 计算机视觉+Numpy和OpenCV入门
  • Plaid | 数据库切换历程:从 AWS Aurora MySQL 到 TiDB 的迁移之旅
  • ⚡️《静电刺客的猎杀手册:芯片世界里的“千伏惊魂“》⚡️
  • LeetCodehot 力扣热题100 从前序与中序遍历序列构造二叉树
  • 尚硅谷课程【笔记】——大数据之Hadoop【一】
  • Codeforces Round 1004 (Div. 2)(A-E)
  • HTML、Vue和PHP文件的区别与联系
  • mybatis-lombok工具包介绍
  • 第十五届蓝桥杯嵌入式省赛真题(满分)
  • Android Studio - 解决gradle文件下载失败
  • 【ISO 14229-1:2023 UDS诊断(会话控制0x10服务)测试用例CAPL代码全解析④】
  • 蓝桥杯篇---超声波距离测量频率测量
  • 1-7 gitee代码推送问题
  • Spark 和 Flink
  • 浅识Linux高阶用法
  • 【系统架构设计师】虚拟机体系结构风格
  • 基于 SpringBoot 的 4S店车辆管理系统 系统的设计与实现
  • 【Springboot知识】从零开始配置springfox
  • vue字符串的常用方法,截取字符串,获取字符串长度,检索字符串
  • 沈阳一超市疑借领养名义烹食流浪狗,当地市监局:已收到多起投诉
  • 教育部基础教育教指委:小学阶段禁止学生独自使用开放式内容生成功能
  • 欧阳娜娜担任江西吉安文化旅游大使
  • 耿军强任陕西延安市领导,此前任陕西省公安厅机场公安局局长
  • 宣布停火后,印控克什米尔地区再次传出爆炸声
  • 江苏省委社会工作部部长等多人拟在省志愿服务联合会任职