Qt Creator工具git使用完整教程


环境准备

  • 安装 Git 客户端,安装时勾选添加系统环境变量 PATH
  • Qt Creator 配置 Git:顶部菜单「工具→选项→版本控制→Git」,填入 git.exe 路径、个人用户名 和 邮箱
  • 项目路径禁止中文、空格、特殊符号

给Qt项目初始化Git仓库

  • Qt Creator 顶部菜单:工具 → Git → Create Repository
  • 选中项目根目录(和 CMakeLists.txt/.pro 同级文件夹)
  • 确认后项目根目录生成隐藏 .git 文件夹,本地版本库创建完成

创建并配置.gitignore(用于过滤编译垃圾文件)

在Qt Creator 内创建教程

  • 右键项目根目录 → 新建文件 → 左侧「概要」→ 中间选 Empty File(空文件)
  • 文件名填写 .gitignore,保存到项目根目录
  • 粘贴 Qt CMake 专用过滤 .gitignore 模板:
txt 复制代码
# Qt CMake编译产物 build-*/ 
cmake-build-*/ 
CMakeFiles/ 
CMakeCache.txt *.obj *.o *.exe *.dll *.lib *.a 
# Qt Creator本地缓存配置 
*.pro.user 
*.pro.user.* 
ui_*.h 
moc_*.cpp 
qrc_*.cpp 
# Clangd代码检查缓存 
.clangd/ 
compile_commands.json 
# 系统/IDE垃圾文件 
Thumbs.db 
.DS_Store 
.vscode/ 
*.tmp *.bak *.log
  • 保存文件即可,若弹出语法高亮提示可选择下载(不影响功能)

使得 .gitignore 生效

  • 在Qt Creator 内打开「工具→Git→Commit 提交窗口」。
  • 勾选 .gitignore 文件,填写提交描述 add .gitignore 过滤编译缓存。
  • 执行 Commit 提交,后续匹配模板的文件会被 Git 自动忽略。

在文件夹下创建并提交 .gitignore 文件

  • Windows无法命名 . 开头的文件/文件夹,可以在命令行利用mkdir来创建,或者 新建文本文档,重命名输入 .gitignore. (末尾要带点),而且需要把文本文件的后缀名删除,系统会自动修正文件名。
  • 已提交过编译文件夹:Git 命令行执行 git rm -r --cached build-* 清理缓存后重新提交

本地Git的核心操作教程(Tool -》Git)

Current File(当前文件)

  • 仅对当前打开的单个文件 执行Git操作,子菜单功能:
    • Diff:对比该文件「本地修改」与「上一次提交版本」的代码差异
    • Log:只查看这个文件的所有修改历史(每一次改动记录)
    • Revert:撤销当前文件全部未提交修改,恢复到上次提交状态
    • Stage/Unstage:单独把这个文件加入 / 移出待提交列表
    • 适用场景:只想查看、回退单个文件,不操作整个项目。

Current Project Directory(当前项目目录)

  • 操作范围是整个项目文件夹 ,作用于整个文件夹
    • Status:一次性查看项目内所有文件状态(新增 / 修改 / 删除 / 忽略)
    • Diff:批量查看所有改动文件的差异
    • Clean:一键删除项目里所有未跟踪的编译缓存、临时文件
    • Stage All:把所有改动文件一次性加入待提交区

Local Repository(本地仓库)

  • 纯本地版本库操作,不涉及云端远程仓库,核心本地功能:
    *
    • Commit:打开提交窗口,勾选文件、填写说明,保存本地版本快照
    • Log:查看项目完整全局提交日志(所有分支、所有提交记录)
    • Branches:分支管理:新建分支、切换分支、合并分支、删除分支
    • Stash:储藏半成品代码(改到一半切分支,临时保存修改)
    • Reset:版本回退,可软回退 / 硬回退到任意历史提交
    • Merge:本地分支之间代码合并
    • Fetch(本地预览远程更新,不合并)

Remote Repository(远程仓库)

  • 专门用于本地 -> GitHub/Gitee/GitLab 云端仓库同步,子菜单核心功能:
    *
    • Add Remote:绑定远程仓库(填入 Gitee/GitHub 仓库地址,命名 origin)
    • Remove Remote:解绑已关联的远程仓库
    • Pull:拉取云端最新代码到本地,自动合并
    • Push:把本地所有提交快照上传推送到云端
    • Fetch:只下载远程版本信息,不合并到本地,先预览更新
    • Push Branch:单独推送指定分支到远程

Git Tools(Git 工具集)

  • 辅助工具、命令入口:
    *
    • Git Command Line:直接打开 Git 终端,手动输入 git 命令
    • Merge Tool:图形化冲突解决工具,多人代码冲突时手动选择保留代码
    • Git Clean:清理项目垃圾文件
    • Show:查看某次提交的完整代码改动详情

Actions on Commits...(提交记录操作)

  • 针对历史提交记录的高级操作:

新建仓库

  • 初始化 Git 本地仓库,等价命令 git init:
  • 选中项目根目录执行后,生成隐藏 .git 文件夹,当前项目正式纳入 Git 版本管理。
  • 新项目、已有项目第一次使用 Git 时必点此选项。
相关推荐
怕浪猫5 小时前
3 小时搭一个能用的聊天机器人后端,我用了这套技术栈
后端·面试·github
miofly5 小时前
NVIDIA 将 Run:ai 平台全面开源,纳入 DSX AI Factory 体系
开源·github
miofly6 小时前
GitHub 今日推荐|MOSS-Image:靠坐标框精确控制文字排版的图像生成模型
python·开源·github
小弥儿7 小时前
GitHub今日热榜 | 2026-10-19:智能体生态包场的一天
学习·开源·github
钱多多_qdd7 小时前
将 GitHub 项目导入 Gitee:三种常用方法详解
gitee·github
逛逛GitHub7 小时前
玩了一天 1.2 万人收藏的开源音乐模型,真的惊艳到我了。。。
github
一缕82年的清风8 小时前
GitHub 几天狂揽 20 万星!让 AI 把闭源软件“逆向开源”:爆火神器 REA 深度实测与架构师冷思考
github
西安同步电子8 小时前
单台NTP时钟服务器能带多少台NTP客户端?大规模授时容量测算指南
github
JYCJ_9 小时前
星愿池·成长档案
github