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

记录项目保存到 GitHub 的完整过程

Git 操作笔记

这个文档记录本项目最常用的 Git / GitHub 操作。以后每次改完代码,可以按这里一步一步做。

GitHub 仓库: ```text https://github.com/stduliang/yolov5-deploy.git

1. 先进入项目目录

打开 PowerShell,然后输入:

cd C:\Users\YPL\Desktop\yolov5

2. 查看当前状态

每次操作 Git,第一步都建议先看状态:

git status

常见结果说明:

nothing to commit, working tree clean

表示当前没有需要保存的代码修改。

Changes not staged for commit

表示有文件改了,但还没有选择要保存哪些文件。

Changes to be committed

表示文件已经 add,准备 commit。

Your branch is ahead of 'origin/main' by 1 commit

表示本地已经 commit 了,但还没有 push 到 GitHub。

Your branch is up to date with 'origin/main'

表示本地和 GitHub 已同步。

3. 查看改了哪些文件

看简短列表:

git status--short

看每个文件改了多少:

gitdiff--stat

看某个文件具体改了什么,例如:

gitdiff--CMakeLists.txt

4. 不要随便 git add .

本项目里有模型文件,例如:

data/yolov5/ yolov5s-0.onnx *.onnx *.trt

这些文件通常很大,不建议直接提交到 GitHub。

所以不要随便用:

git add.

更推荐明确写出要提交的代码文件。

例如这次 Windows 编译相关修改,只提交这几个:

git add CMakeLists.txt app_yolov5.cppcmake/common.cmake

5. 保存到本地 Git

add 之后,执行 commit:

git commit-m"Adapt project for Windows TensorRT build"

commit 的意思是:把当前选中的修改保存到本地 Git 历史里。

注意:commit 只是保存在自己电脑里,还没有上传到 GitHub。

6. 上传到 GitHub

git push origin main

成功时会看到类似:

To https://github.com/<你的用户名>/<你的仓库名>.git 22f8875..d0341b6 main -> main

这表示 GitHub 上的 main 分支已经更新成功。

7. 上传后确认

push 成功后,再检查一次:

git status

理想结果:

Your branch is up to date with 'origin/main'.

如果还看到:

Untracked files: data/yolov5/

这是正常的。它表示模型文件还没有提交,我们是故意不提交它。

8. Visual Studio 里查看 Git 改动

如果用 Visual Studio:

  1. 打开 Visual Studio。
  2. 选择File -> Open -> Folder
  3. 打开项目目录:
<项目目录>
  1. 打开菜单视图 -> Git 更改
  2. git 更改里可以看到修改过的文件。
  3. 点击某个文件,可以查看具体 diff。
  4. 对修改后的每个文件右键“暂存”,只暂存需要提交的代码文件,不要暂存大文件。
  5. 填写 “提交信息”。
  6. 点击全部提交,再从工具栏Git中,推送。或者直接“全部提交并推送”,上传到 GitHub。
    重点:不要直接点全部提交,除非你确认所有文件都应该提交。

9. GitHub 上传失败

如果执行:

git push origin main

报错:

fatal: unable to access 'https://github.com/...': Recv failure: Connection was aborted

通常是网络问题。

先测试 GitHub 端口:

Test-NetConnectiongithub.com-Port 443

本机代理端口是10808,所以设置:

git config--global http.proxy http://127.0.0.1:10808
git config--global https.proxy http://127.0.0.1:10808

确认是否设置成功:

git config--global--get http.proxy
git config--global--get https.proxy

应该都显示:

http://127.0.0.1:10808

然后重新上传:

git push origin main

取消 Git 代理

git config--global--unset http.proxy
git config--global--unset https.proxy

10. 最常用的一套流程

以后每次改完代码,按这个顺序来:

git status

查看改了哪些文件:

gitdiff--stat

只添加要保存的代码文件:

git add 文件1 文件2 文件3

提交到本地:

git commit-m"说明这次改了什么"

上传到 GitHub:

git push origin main

最后确认:

git status

看到:

Your branch is up to date with 'origin/main'.

就说明这次代码已经安全保存。

11. 如果错误提交了,如何回退

回退前先判断一件事:

这个错误提交有没有 push 到 GitHub?

判断方法:

git status

再看最近提交:

git log--oneline-5

情况一:还没有 push

如果看到:

Your branch is ahead of 'origin/main' by 1 commit

说明这个提交只在本地,还没有上传到 GitHub。

如果想撤销最近一次 commit,但保留文件修改,用:

git reset--soft HEAD~1

这条命令的效果是:

commit 被撤销,但代码修改还在。

然后可以重新选择文件:

git add 文件1 文件2

再重新提交:

git commit-m"新的提交说明"

情况二:已经 push 到 GitHub

如果错误提交已经上传到 GitHub,新手更推荐用:

git revert HEAD

这条命令的效果是:

新建一个反向提交,把上一次提交的修改撤回来。

然后上传这个回退提交:

git push origin main

这种方式不会破坏 GitHub 上已经存在的提交历史,更安全。

尽量不要随便用 hard

下面这条命令很危险:

git reset--hard HEAD~1

它会撤销 commit,并且把代码修改也丢掉。

除非非常确定这些修改不需要了,否则不要用。

http://www.jsqmd.com/news/1159652/

相关文章:

  • Maya 2027与2019版本安装指南:从系统配置到性能优化
  • 计算机视觉与深度学习 | 深入浅出视觉SLAM回环检测(原理、公式与MATLAB代码)
  • 2026内江靠谱防水公司推荐:卫生间免砸砖防水、外墙、地下室、楼顶渗漏、阳光房防水 选对服务商,售后无忧,告别房屋渗漏(7月最新靠谱公司解析) - 企业资讯
  • 湖北世达实用外国语学校普通高考文化课班招生简章 - 湖北找学校
  • Findroid:为Jellyfin生态打造的专业级Android原生媒体播放完整方案
  • 2026年7月最新上海爱彼官方售后客服中心地址电话及服务网点分布 - 爱彼中国官方服务中心
  • 企业采购阿里云,别只盯代理商名单——服务商选择的一些思路
  • 引入 ERP后,如何真正发挥其资源整合优势?
  • 第十一课
  • 抖音批量下载终极指南:douyin-downloader让你的创作效率提升500%
  • 软件测试之Fiddler详解
  • LangChain v2流式输出实战:DeepAgents的stream_mode三种模式详解
  • 外贸人警惕:意大利客户D/P寄单套路专骗出口企业
  • 村长团队GTA5序列帧动画超详细零基础教程
  • 萧邦官方售后服务中心地址与维修热线实地考察报告+多信源验证(2026年7月最新) - 萧邦中国官方服务中心
  • 3分钟解锁你的音乐收藏:告别平台限制的NCM解密完全指南
  • 2026筑宅安|佛山专业屋顶漏水修缮,大小屋面工程一站式根治渗水难题 - 筑宅安
  • MacBERT中文预训练模型深度解析:纠错型掩码语言模型的技术突破与实践指南
  • 湖北世达实用外国语学校小语种高考班招生简章 日语 / 俄语逆袭冲本科 - 湖北找学校
  • 英飞凌 MOSFET 数据手册对比分析:以 OptiMOS™ 7 为例解读 5 项关键参数选型
  • Chrome Gemini增强插件:绕过官方限制的网页端AI协作者
  • 2026乐山靠谱防水公司推荐:卫生间免砸砖防水、外墙、地下室、楼顶渗漏、阳光房防水 选对服务商,售后无忧,告别房屋渗漏(7月最新靠谱公司解析) - 企业资讯
  • AI原生应用开发实战:从Spring AI集成到RAG与Agent架构演进
  • NoC 硬件实现:VC 链路抢占与死锁避免 (`floo_vc_arbiter`)
  • 宝珀官方更换原装表带价格查询|全新服务热线及门店地址权威信息公告(2026年7月最新) - 宝珀官方售后服务中心
  • 浮动布局
  • 绿联NAS运行CLI Proxy API实操:NVIDIA模型接入、OpenClaw调用与公网访问
  • Python Requests + XPath 爬取六只脚轨迹数据:30页/870条实战与反爬策略
  • 英雄联盟智能革命:如何用League Akari让你的游戏体验提升300%
  • 2026南充靠谱防水公司推荐:卫生间免砸砖防水、外墙、地下室、楼顶渗漏、阳光房防水 选对服务商,售后无忧,告别房屋渗漏(7月最新靠谱公司解析) - 企业资讯