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

5分钟Git指南

Git——一个版本控制系统

了解Git

当你建立了一个Git版本库,那么存放.git(也就是版本库)的文件夹就被称为工作区,.git内部有一个暂存区,一个叫做master的分支,一个HEAD指针能够指向分支中不同版本的文件(现在叫做main分支)

初始化Git

在安装完git之后,第一步是登陆

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

然后你要选择一个文件夹,作为版本库(仓库),在此目录下使用git init来创建一个全新的版本库(会在此文件夹下生成.git文件夹)

版本库的相关操作

添加文件到版本库

如果你有一个readme.txt文件,你需要先用git add readme.txt来把文件添加到仓库(此时会在stage暂存区),然后使用git commit -m "This is a new"正式提交到master分支,-m后面跟的是你对本次提交的消息commit可以一次提交很多文件,因此你可以多add几个文件(使用git add .可以将工作区所有文件都添加到暂存区)

仓库状态

git status这个命令告诉你当前仓库的状态以及已经被添加的文件

git diff则是告诉你上一次修改了什么内容

git log可以显示仓库拥有者与文件版本的时间与添加的消息

版本回退

使用git reset --hard HEAD^命令

此命令有三个参数,–hard表示回到文件修改之前(上一个版本的文件被提交的状态), --soft是回到上次提交之前,–mixed是回到上次被添加之前

HEAD表示上一个版本,HEAD是当前版本,HEAD^是上上个版本,也可以用HEAD~n表示(n代表回退到n个版本之前)

如果想回到当前版本,只需要用git reset --hard 当前版本的版本号就行
可以使用git reflog查看版本号,它会记录你的每一次命令

git checkout -- readme.txt此命令起到的作用是撤销修改,当你不小心在readme文件中添加了错误信息,此时有两种情况:

  • 如果你还没有把文件添加到暂存区此命令会让文件回到版本库中的状态
  • 当你已经把文件添加到暂存区又在工作区进行了修改,此时这个命令会让文件回到暂存区中的状态
删除

使用git rm read.txt命令可以将工作区、版本库中的该文件删除
而使用git rm --cache命令能够删除版本库中文件,工作区的文件得以保留
(git rm删除只是当前分支的文件,文件的历史记录仍然保留在版本库中,其他分支也不受影响)
使用git checkout --readme.txt可以将工作区的文件恢复

使用远程仓库
git remote add origin + 你的仓库链接

使用此命令连接你的远程仓库(origin是远程仓库的默认名称)
git remove -v会显示你当前的远程地址

git push -u origin main

这个命令能把当前分支推送到远程,由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的main分支关联起来,在以后的推送或者拉取时就可以简化命令

git clone + 远程仓库链接

可以将远程仓库的内容拉取到本地

.gitignore文件

当你的工作区里有很多文件想要一次全部推送但又不想把无关紧要的文件也推上去时,可以使用此文件,比如说

* #忽略全部文件 /notes #忽略notes文件夹 !books #取消忽略books文件夹

也就是说/表示根目录,此文件在add的时候起作用

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

相关文章:

  • DirPrint:命令行目录结构可视化工具的设计原理与工程实践
  • 2025-2026年乌鲁木齐黄金回收店推荐:五家口碑评测对比假日变现防流程拖沓 - 品牌推荐
  • 【PyTorch实战】从零构建CNN模型:MNIST手写数字识别全流程解析
  • 《从质点到位姿:基于Python与PyVista的导弹制导控制全栈仿真》: 可视化革命——基于 PyVista 的 3D 战场构建与实时渲染
  • 2025-2026年电商园区核定公司联系电话推荐:靠谱机构与联系要点 - 品牌推荐
  • 闪存空间与设备性能:为何清理存储能提升响应速度?
  • 2025-2026年北京宝马专修中心推荐:五家靠谱机构专业评测应对日常保养防漏油痛点 - 品牌推荐
  • 终极WebPShop指南:如何在Photoshop中完美处理WebP格式图片
  • ISP中的AE(自动曝光)流程实现
  • 网易云音乐接入DeepSeek-V4,多维度提升音乐体验,未来创新服务值得期待
  • 用AG9311芯片DIY一个多功能Type-C扩展坞:从原理图到PCB布局的保姆级指南
  • ISSCC传感器设计启示:从高精度温度测量到低功耗系统优化
  • 从CANoe实战出发:深度解析UDS网络层诊断中的流控帧(FC)与时间参数STmin
  • 2026年5月乌鲁木齐黄金回收店推荐:五家专业评测夜间变现防亏损 - 品牌推荐
  • 授权与访问控制:实现精细化的权限管理
  • 阿里巴巴千问与淘宝全面打通,AI购物全流程闭环落地!
  • C#与Redis实战:基于StackExchange.Redis的数据操作全解析
  • 不删除属性的情况下简化对象属性的方法探讨
  • 2018自动化测试核心价值与行业挑战解析
  • 基于Godot引擎的经典游戏重制:OpenClaw项目架构与实现深度解析
  • 告别哑巴ESP32:用MAX9814麦克风+百度云,5分钟搞定离线语音唤醒词识别
  • 任务历史面板:浏览 Claude Code 的完整任务对话、复制提示词、一键切换继续工作
  • 企业级技术项目编排:从元数据到自动化,构建高效研发体系
  • a16z领投2275万美元,AI招聘初创公司Ethos如何破传统专家网络匹配困局?
  • 电动汽车低速警示音系统设计:从法规合规到个性化声音的工程实践
  • 旭雷禹鼎遥控器F21-E2B-8起重机天车行车电动葫芦工业无线遥控器
  • HFSS主从边界条件实战:用周期性边界快速搞定天线阵列仿真(附微带贴片案例)
  • 哪家乌鲁木齐黄金回收店靠谱?2026年5月推荐五家评测对比白天变现防压价 - 品牌推荐
  • ClaudeBurst:macOS菜单栏应用,实时监控Claude Code会话时间
  • 轻量级GitOps工具Lizz:简化Kubernetes多集群部署