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

使用git上传项目的步骤

使用 Git 上传项目(即把本地项目代码推送到远程仓库,比如 GitHub、GitLab、Gitee 等)是一个非常常见的操作。下面是 ​详细的、一步一步的 Git 上传项目流程,适用于大多数情况,以 ​GitHub 为例,但同样适用于其他平台(如 Gitee、GitLab)。


🧭 一、整体流程概览

  1. 检查/安装 Git
  2. 初始化本地 Git 仓库
  3. 将项目文件添加到暂存区
  4. 提交更改到本地仓库
  5. 连接到远程仓库(如 GitHub)​
  6. 推送代码到远程仓库

✅ 二、详细步骤


第 1 步:检查是否安装了 Git

在终端(Windows:CMD/PowerShell/Git Bash;Mac/Linux:Terminal)中输入: 

git --version

如果显示类似 git version 2.xx.x,说明已安装。
如果没有安装,请先下载并安装 Git:

  • 官网下载:https://git-scm.com/

第 2 步:打开你的项目文件夹

通过终端,​进入到你的项目根目录,也就是包含 .vue / .js / package.json 等文件的地方。 

cd /path/to/your/project

比如: 

cd ~/Desktop/my-react-app

你可以使用 pwd(Mac/Linux)或 cd(Windows)查看当前路径,确保你在正确的项目文件夹中。


第 3 步:初始化 Git 仓库

在项目根目录下运行: 

git init

这会在当前目录下创建一个隐藏的 .git 文件夹,表示此文件夹已被 Git 管理。


第 4 步:将项目文件添加到 Git 暂存区

运行以下命令,将所有文件添加到暂存区(stage): 

git add .

⚠️ 注意:

  • git add . 表示添加当前目录下所有新文件和修改的文件
  • 如果只想添加某个文件,可以用:git add 文件名
  • 如果想更精准控制,可以先 git status 查看哪些文件未被跟踪

第 5 步:提交文件到本地仓库

将暂存区的文件提交到本地 Git 仓库,并添加提交说明: 

git commit -m "feat: 初始化项目 / 第一次提交"

💡 提交信息推荐写得清晰些,比如:

  • "feat: 初始化项目结构"
  • "fix: 修复登录页面样式"
  • "docs: 更新 README"

第 6 步:在远程代码托管平台(如 GitHub)创建仓库

  1. 打开 https://github.com 并登录。
  2. 点击右上角 ​​"+" → New repository
  3. 输入仓库名称(如 my-react-app),​不要勾选 "Initialize with README"​​(除非你明确需要)。
  4. 选择 Public 或 Private。
  5. 点击 ​Create repository

创建成功后,GitHub 会显示一个类似于下面的页面,里面有你的 ​远程仓库地址(HTTPS 或 SSH)​,类似:

  • HTTPS 地址:
    https://github.com/你的用户名/仓库名.git

  • SSH 地址:
    git@github.com:你的用户名/仓库名.git

🔗 你可以从页面上复制这个远程仓库地址,待会要用。


第 7 步:将本地仓库与远程仓库关联

在本地终端运行以下命令,将本地 Git 仓库与远程仓库关联: 

git remote add origin 远程仓库地址

比如: 

git remote add origin https://github.com/yourusername/your-repo-name.git

或者使用 SSH(如果你配置了 SSH key):

 

bash

复制

git remote add origin git@github.com:yourusername/your-repo-name.git

🔒 ​HTTPS vs SSH:​

  • HTTPS​:每次推送可能需要输入账号密码(或使用 token)。
  • SSH​:更安全、便捷,但需要你提前配置 SSH key。

第 8 步:首次推送代码到远程仓库

如果是 ​第一次推送,你需要使用以下命令: 

git push -u origin main

⚠️ 注意:

  • 很多新仓库的默认分支名字已经从 master 改成了 main(GitHub、GitLab 等)。
  • 如果你看到错误说没有 main 分支,可能你本地分支叫 master,可以改成:
     

    bash

    复制

    git push -u origin master

解释:​

  • -u(或 --set-upstream)的意思是设置默认推送的分支,以后你可以直接使用 git push 而不用每次都写 origin main

第 9 步:验证是否推送成功

  1. 刷新你在 GitHub 上刚创建的仓库页面。
  2. 你应该能看到你刚刚推送的文件,比如 package.jsonsrc/README.md 等。
  3. 如果看到这些文件,说明你成功上传了项目!

🔄 三、之后再次推送更新(日常使用)

当你对项目做了新的修改,并想提交并推送到远程仓库时,重复以下步骤即可: 

# 1. 查看当前修改状态(可选)
git status# 2. 添加修改的文件到暂存区
git add .# 或者只添加特定文件
# git add src/App.js# 3. 提交到本地仓库
git commit -m "描述你的修改,如:fix: 修复按钮样式"# 4. 推送到远程仓库
git push

如果你已经设置过 upstream(比如用了 -u),后面的 git push 可以不用加 origin main


🧠 四、常用 Git 命令速查表

命令说明
git init初始化本地 Git 仓库
git add .添加所有文件到暂存区
git add 文件名添加指定文件
git commit -m "message"提交到本地仓库
git status查看当前文件状态(哪些修改了/未跟踪/已暂存)
git log查看提交历史
git remote add origin 仓库地址关联远程仓库
git push -u origin main首次推送代码到远程
git push推送最新代码(已关联情况下)
git pull拉取远程最新代码(避免冲突)

❗ 常见问题

1. ​git push 提示权限不足?​

  • 如果你用的是 HTTPS,可能需要输入 GitHub 用户名和 ​Personal Access Token(不是密码)​
  • 推荐使用 SSH 方式,只需配置一次 SSH key 即可免密推送。

2. ​git push 提示 fatal: not a git repository?​

  • 说明你没有在这个目录下运行 git init,请确认你当前在项目文件夹内。

3. ​如何切换分支?​

  • 查看分支:git branch
  • 切换分支:git checkout 分支名
  • 创建并切换分支:git checkout -b 新分支名

✅ 总结:用 Git 上传项目的完整流程

步骤操作
1确保已安装 Git
2打开终端,进入你的项目文件夹
3运行 git init 初始化仓库
4运行 git add . 添加文件到暂存区
5运行 git commit -m "提交信息" 提交到本地
6在 GitHub/Gitee 等平台创建远程仓库,复制仓库地址
7运行 git remote add origin 仓库地址 关联远程
8运行 git push -u origin main(或 master)首次推送
9之后日常使用 git addgit commitgit push 即可
http://www.dtcms.com/a/353437.html

相关文章:

  • 煤矸石检测数据集VOC+YOLO格式3090张2类别
  • This method can cause UI unresponsiveness if invoked on the main thread.
  • week5-[字符数组]数和
  • 【技巧】PostgreSQL自动转换类型 int转bool 转int
  • 苍穹外卖项目实战(日记十一)-记录实战教程及问题的解决方法-(day3-3)完善菜品分页查询功能
  • 怎么理解API?
  • 用户体验设计 | 什么是 AX?从 UX 到 AX 的演进
  • 数据结构——算法效率的度量(时间复杂度与空间复杂度)
  • Elasticsearch 启动反复重启排查实录:从“内存不足”到“vm.max\_map\_count 过小”
  • 图表可视化地理趋势-Telerik WPF Chart
  • 智能汽车制造:海康NVR管理平台/工具EasyNVR多品牌NVR管理工具/设备实现无插件视频监控直播方案
  • R语言贝叶斯方法在生态环境领域中的技术应用
  • 攻克 Java 分布式难题:并发模型优化与分布式事务处理实战指南
  • APP与WEB测试的区别?
  • 人工智能在医疗领域中辅助外科手术的应用综述
  • 【VSCode】使用VSCode创建Java C/S架构项目
  • 如何用Renix实现网络测试自动化: 从配置分离到多厂商设备支持
  • 【网络编程】NtyCo协程服务器的框架(轻量级的协程方案,人称 “小线程”)
  • 从浏览器无法访问到Docker容器的 FastAPI 服务地址【宿主机浏览器和容器不在同一个网络层面:端口映射】
  • 前端AI应用实践指南:从基础概念到高级实现
  • 云手机的未来发展怎么样?
  • 数据结构(C语言篇):(二)顺序表
  • 状态设计模式
  • 手机冻结技术发展时间轴
  • Flutter项目详解
  • 深度学习实战117-各种大模型(Qwen,MathGPT,Deepseek等)解高考数学题的应用,介绍架构原理
  • C++工程实战入门笔记6-函数(三)关于base16编码的原理和函数模块化实战
  • LINUX --- 网络编程(二)
  • OpenAi在中国拿下“GPT”商标初审!
  • October 2019 Twice SQL Injection