如何将本地项目上传到GitHub

news2024/11/18 0:45:38

在软件开发过程中,将本地项目上传到GitHub是一个非常重要的步骤。它不仅可以帮助你备份代码,还可以让你与团队成员共享和协作开发。本文将详细介绍如何将本地项目上传到GitHub。

前提条件
  1. 已安装Git。如果还没有安装,请参考Git官网进行下载安装。
    ( 或者使用命令一键安装具体参考上篇博客一键安装git
  2. 已创建一个GitHub账号,并创建了一个新的GitHub仓库。
步骤1:在GitHub上创建一个新的仓库
  1. 登录到你的GitHub账户。
  2. 点击右上角的 + 图标,然后选择“New repository”。
  3. 填写仓库名称、描述,并选择仓库的可见性(Public或Private)。
  4. 点击“Create repository”按钮创建新仓库。
步骤2:初始化本地Git仓库

在命令提示符或Git Bash中,导航到你的项目文件夹,并初始化Git仓库:

cd path/to/your/project
git init
步骤3:配置Git用户名和邮箱

在进行首次提交之前,需要配置Git的用户名和邮箱:

git config --global user.name "Your Name"
git config --global user.email "your-email@example.com"

Your Nameyour-email@example.com替换为你的GitHub用户名和邮箱。

步骤4:创建README文件并提交

创建一个README文件并进行首次提交:

echo "# SchoolMarket" >> README.md
git add README.md
git commit -m "first commit"
步骤5:添加远程仓库并推送

将本地仓库与GitHub上的远程仓库关联起来,并推送代码:

git remote add origin https://github.com/your-username/SchoolMarket.git
git branch -M main
git push -u origin main

在这里插入图片描述

你看到这个GitHub登录界面,通常是在尝试使用Git命令推送代码到GitHub时,Git需要验证你的身份。这是为了确保你的操作权限和安全性。根据这个界面,你可以选择以下方式登录:

使用浏览器登录

  1. 点击“Sign in with your browser”: 这会打开你的默认浏览器,并引导你完成GitHub的登录过程。

  2. 完成浏览器中的登录: 在浏览器中,输入你的GitHub用户名和密码,完成登录过程。

  3. 授权Git操作: 登录成功后,你可能需要授权GitHub桌面应用或命令行工具进行操作。授权后,浏览器会返回一条信息,提示你可以关闭窗口并返回命令行。

  4. 返回命令行: 回到命令行窗口,你应该会看到Git操作继续执行,推送代码到GitHub。

使用代码登录

  1. 点击“Sign in with a code”: 这会生成一个一次性使用的代码,用于验证身份。

  2. 打开浏览器并进入指定的GitHub页面: 按照命令行提示,打开浏览器并访问提供的URL(通常是GitHub的设备激活页面)。

  3. 输入代码: 在浏览器中输入Git生成的一次性代码,验证你的身份。

  4. 完成验证: 验证成功后,回到命令行,Git将会继续执行剩下的操作。

使用Token登录

如果你选择了使用Token登录,可以按照以下步骤操作:

  1. 获取个人访问Token: 打开GitHub,进入“Settings”->“Developer settings”->“Personal access tokens”,生成一个新的Token。确保选择需要的权限(例如repo权限)。

  2. 使用Token登录: 在命令行中使用以下命令配置Token: sh git config --global user.name "Your GitHub Username" git config --global user.email "your-email@example.com" git config --global credential.helper cache

    然后执行推送命令时,Git会提示你输入Token作为密码。

示例操作

以下是一个完整的操作示例,使用浏览器登录:

-m "Add all untracked files" PS E:\campus-market> git push -u origin main ```

在执行`git push`命令后,出现登录界面,点击“Sign in with your browser”,按照上述步骤完成登录。

登录成功后,Git会自动继续推送代码,你可以在GitHub仓库中查看到最新的提交记录。

注意:如果之前已经添加过远程仓库,会提示`remote origin already exists`,这时无需重复添加。
步骤6:添加未跟踪的文件并提交

在进行首次提交后,Git会提示有未跟踪的文件。查看未跟踪的文件,并将它们添加到暂存区:

git status
git add .
git commit -m "Add all untracked files"
步骤7:推送更改到GitHub

将最新的更改推送到GitHub:

git push -u origin main
整个过程示例

以下是完整的操作示例:

PS E:\campus-market> git config --global user.name "Your Name"
PS E:\campus-market> git config --global user.email "your-email@example.com"

PS E:\campus-market> echo "# SchoolMarket" >> README.md
PS E:\campus-market> git init
Initialized empty Git repository in E:/campus-market/.git/

PS E:\campus-market> git add README.md
PS E:\campus-market> git commit -m "first commit"
[main (root-commit) b1c6a7a] first commit
 1 file changed, 1 insertion(+)
 create mode 100644 README.md

PS E:\campus-market> git remote add origin https://github.com/your-username/SchoolMarket.git
PS E:\campus-market> git branch -M main
PS E:\campus-market> git push -u origin main
branch 'main' set up to track 'origin/main'.

PS E:\campus-market> git status
On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .idea/
        campus-market.iml
        campus-market.zip
        db_campus_market.sql
        pom.xml
        src/
        target/
        "\347\254\224\350\256\2602024.txt"

nothing added to commit but untracked files present (use "git add" to track)

PS E:\campus-market> git add .
PS E:\campus-market> git commit -m "Add all untracked files"
[main b2f4a8b] Add all untracked files
 7 files changed, 200 insertions(+)
 create mode 100644 .idea/workspace.xml
 create mode 100644 campus-market.iml
 create mode 100644 campus-market.zip
 create mode 100644 db_campus_market.sql
 create mode 100644 pom.xml
 create mode 100644 src/main/java/com/example/App.java
 create mode 100644 target/classes/com/example/App.class

PS E:\campus-market> git push
Everything up-to-date

现在,你的本地项目已经成功上传到GitHub。你可以在GitHub仓库页面查看你的项目文件,并与团队成员协作开发。通过这些步骤,你可以轻松地将本地项目上传到GitHub,并保持项目的版本控制。

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

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

相关文章

记忆化搜索汇总

记忆化搜索简介 记忆化搜索&#xff08;Memoization Search&#xff09;&#xff1a;是一种通过存储已经遍历过的状态信息&#xff0c;从而避免对同一状态重复遍历的搜索算法。 记忆化搜索是动态规划的一种实现方式。在记忆化搜索中&#xff0c;当算法需要计算某个子问题的结果…

代理记账公司哪家好,深度剖析与选择指南

代理记账&#xff0c;作为企业会计管理和运营的重要环节&#xff0c;已经逐渐被越来越多的企业所重视&#xff0c;在众多的代理记账公司中&#xff0c;如何选择一家专业、高效且值得信赖的代理记账机构呢&#xff1f;以下是一些深度解析和推荐。 公司的规模 规模较大的代理记账…

局域网怎么设置路由器?

在搭建局域网的过程中&#xff0c;设置路由器是非常重要的一步。正确地设置路由器可以确保局域网的正常运行&#xff0c;并且可以更好地保护网络安全。以下是一些关于如何设置路由器的指南。 第一步&#xff1a;获取路由器 您需要获得一台适合您需求的路由器设备。选择一款性能…

从C到C++,C++入门(2)

在C入门篇&#xff08;1&#xff09;中&#xff0c;博主为大家简单介绍了什么是C&#xff0c;以及C中的关键字&#xff0c;命名空间&#xff0c;输入与输出和缺省参数的相关知识。今天就让我们继续一起学习C的基础知识点吧&#xff01;&#xff01; 1.函数重载 1.1函数重载的概…

通过 .NET COM 互操作设置 System.Drawing.Color

1. 问题背景 在尝试使用 Aspose.Words 库执行 COM 互操作时&#xff0c;遇到了一个关键问题&#xff1a;无法设置颜色。理论上&#xff0c;可以通过向 DocumentBuilder.Font.Color 赋值来设置颜色&#xff0c;但尝试时却出现了 OLE 错误 0x80131509。 以下代码示例演示了这个…

Python Flask 入门开发

Python基础学习&#xff1a; Pyhton 语法基础Python 变量Python控制流Python 函数与类Python Exception处理Python 文件操作Python 日期与时间Python Socket的使用Python 模块Python 魔法方法与属性 Flask基础学习&#xff1a; Python中如何选择Web开发框架&#xff1f;Pyth…

杨校老师项目之SpringBoot整合Vue超市管理系统

1.获取代码&#xff1a; 有偿获取&#xff1a;mryang511688 2.技术栈 SpringBoot MySQL mybatis Plus Redis 摘 要 随着信息化时代的到来&#xff0c;管理系统都趋向于智能化、系统化&#xff0c;超市进销存系统也不例外&#xff0c;但目前国内仍都使用人工管理&#xff…

运维开发(DevOps):加速软件交付的关键方法

1. 什么是运维开发 运维开发&#xff08;DevOps&#xff09;是将软件开发&#xff08;Development&#xff09;与信息技术运维&#xff08;Operations&#xff09;的流程整合在一起的实践方法。DevOps的目标是通过增强开发和运维团队之间的协作&#xff0c;提高软件产品的发布…

【全开源】小区物业收费管理系统小程序(FastAdmin+UniApp)

便捷生活新选择 一款基于FastAdminUniApp开发的一款物业收费管理小程序。包含房产管理、收费标准、家属管理、抄表管理、在线缴费、业主公告、统计报表、业主投票、可视化大屏等功能。为物业量身打造的小区收费管理系统&#xff0c;贴合物业工作场景&#xff0c;轻松提高物业费…

C#开源实用的工具类库,集成超过1000多种扩展方法

前言 今天大姚给大家分享一个C#开源&#xff08;MIT License&#xff09;、免费、实用且强大的工具类库&#xff0c;集成超过1000多种扩展方法增强 .NET Framework 和 .NET Core的使用效率&#xff1a;Z.ExtensionMethods。 直接项目引入类库使用 在你的对应项目中NuGet包管…

【ARM Cache 及 MMU 系列文章 6 -- Cache 寄存器 CTR | CLIDR | CCSIDR | CSSELR 使用详解 1】

请阅读【ARM Cache 及 MMU/MPU 系列文章专栏导读】 及【嵌入式开发学习必备专栏】 文章目录 Cache 常用寄存器Cache CSSELR 寄存器Cache CSSELR 使用场景Cache CSSELR 操作示例 Cache CLIDR 寄存器LoUU 介绍LoUU 使用 LoUIS 介绍CLIDR 使用 Cache CCSIDR 寄存器 Cache 常用寄存…

如何使用 DANN 改进神经网络

文章目录 一、说明二、语言模型真的理解语言吗&#xff1f;三、了解分配转变3.1 样本选择偏差3.2 非静止环境3.3 领域适配挑战3.4 概念漂移 四、对领域对抗训练的介绍 一、说明 由于其多功能性&#xff0c;神经网络是大多数现代机器学习管道的主要内容。他们处理非结构化数据的…

Java Web学习笔记12——JavaScript字符串

String&#xff1a; String字符串对象创建方法有两种&#xff1a; 方式一&#xff1a; var str new String("Hello String"); 方式二&#xff1a; var str "Hello String"; 常见的属性和方法&#xff1a; <!DOCTYPE html> <html lang"…

根据租户id切换数据源

花了半天时间&#xff0c;使用spring-boot实现动态数据源&#xff0c;切换自如 在一个项目中使用多个数据源的情况很多&#xff0c;所以动态切换数据源是项目中标配的功能&#xff0c;当然网上有相关的依赖可以使用&#xff0c;比如动态数据源&#xff0c;其依赖为&#xff0c;…

JS-10-es6常用知识-对象扩展

目录 1 Object.assign&#xff1a;实现拷贝继承 2 扩展运算符(...) 1&#xff09;介绍 2&#xff09;数组中的扩展运算符 3&#xff09;对象中的扩展运算符 1 Object.assign&#xff1a;实现拷贝继承 1&#xff09;目的&#xff1a;Object.assign()方法在 JavaScript 中被…

vscode 搜索框乱码

vscode 搜索文件夹 搜索txt文件 ignore取消 搜索中文乱码 https://zhuanlan.zhihu.com/p/661347670 文件 -》首选项-》设置 搜索encoding -》设置 simpified chinese 中文插件

LabVIEW开发EOL功能测试系统

LabVIEW开发EOL功能测试系统 介绍了一种基于LabVIEW开发的EOL功能测试系统方案&#xff0c;涵盖软件架构、工作流程、模块化设计、低耦合性、易于修改与维护、稳定性及硬件选型。系统通过高效的CAN通信实现对电机控制器的全面测试&#xff0c;确保运行可靠并支持未来的升级需求…

VM-Import 导入 Debian 12 系统

介绍 之前介绍过使用 VM-Import 导入 Windows 系统到 AWS 环境启动 EC2 实例, 本文将介绍如何导入 Debian 12 系统. 本地虚拟化使用 VMWare Workstation 创建虚拟机安装和准备 Debian 12 系统, 导出 OVA 文件后上传到 S3 存储桶中再使用 AWSCLI 执行 VM-Import 命令实现导入过…

线性代数|机器学习-P7SVD奇异值分解

文章目录 1. 奇异值分解1.1 SVD求解1.2 行基和列基转换 2. Ax图像表示3. 极坐标表示4. 小结 1. 奇异值分解 现在我们用的是一个m行n列的矩阵A&#xff0c;那么我们计算下特征值方程&#xff1a; A m n x n 1 λ x n 1 ; b m 1 A m n x n 1 \begin{equation} A_{m\tim…

攻防世界---misc---misc_pic_again

1、题目描述&#xff0c;flag为hctf{}格式&#xff0c;下载附件是一张图片 2、将图片放在winhex中分析&#xff0c;没有发现奇怪的信息&#xff0c;接着将图片用Stegsolve分析&#xff0c;查看通道没有发现奇怪的图片&#xff0c;接着分析&#xff0c;对数据进行提取 3、将三个…