git常用命令
说明:[]在实际使用时去掉[]
01 设置
- 注意:命令行区分大小写
git config --list查看设置git config --global user.name 'MrFlySand'设置用户名git config --global user.email '***@163.com'设置用户邮箱- 设置背景、字体等:右击窗口,点击Options

1.1 仓库
在Git的版本控制体系中,工作区、暂存区、远程仓库、本地仓库、Stash区的具体说明如下:
(1)本地仓库(Local Repository)
- 定义:是Git在本地磁盘上维护的一个版本历史数据库,存储了项目所有的提交记录(包括每个版本的文件快照、提交信息、作者、时间等)。
- 作用:是版本控制的核心,所有历史版本的“备份”都存储在这里。通过
git commit命令,暂存区的内容会被提交到本地仓库,形成新的版本记录;git log命令可以查看本地仓库的所有历史提交。
(2)Stash区(储藏区)
- 定义:是一个临时存储区域,用于暂时保存工作区中未完成的修改(这些修改还不想提交到暂存区或本地仓库)。
- 作用:当你在一个功能开发到一半时,需要切换分支处理紧急bug,就可以用
git stash将当前工作区的修改“储藏”起来,待后续再通过git stash pop或git stash apply恢复这些修改,避免代码冲突或丢失。
(3)各区域关系总结
| 区域 | 作用 | 关键命令示例 |
|---|---|---|
| 工作区 | 本地磁盘上实际直接编辑文件的目录,是代码的“工作现场”。 | 无(直接编辑文件即可) |
| 暂存区 | 临时存放待提交的修改,是工作区到本地仓库的“过渡地带”。 | git add(将工作区修改加入暂存区) |
| 本地仓库 | 存储所有历史版本的数据库,是版本控制的“核心仓库”。 | git commit(暂存区提交到本地仓库)、git log(查看历史) |
| Stash区 | 临时储藏未完成的工作区修改,用于分支切换时的临时“寄存”。 | git stash(储藏修改)、git stash pop(恢复并删除储藏) |
| 远程仓库 | 服务器上的共享仓库,用于多人协作时同步代码。 | git clone(克隆远程仓库到本地)、git push(本地仓库推送到远程)、git pull(拉取远程仓库到本地) |
通过这五个区域的协作,Git实现了从“本地开发→临时储藏→版本提交→远程共享”的完整工作流,满足个人开发和团队协作的不同需求。
02 git的基础命令
2.1 下载仓库代码
git config --global user.name '飞沙'
git config --global user.email 'xxx@qq.com'
git clone 'https://github.com/MrFlySand/testCode.git' #从github下载这个仓库
git clone 'https://gitee.com/MrFlySand/testCode.git' #从gitee下载这个仓库

2.2 git add
- 用途:将工作区的修改添加到暂存区(Stage Area),是提交版本前的“准备步骤”。
- 语法:
- 单个文件:
git add 文件名(如git add README.md) - 多个文件:
git add 文件名1 文件名2(如git add index.js utils.js) - 所有修改(含新增、修改、删除):
git add .(注意是英文句号,代表当前目录所有文件)
- 单个文件:
- 示例:修改了
login.js后,执行git add login.js,将该文件的修改加入暂存区。 - 注意:暂存区是“待提交”的过渡区域,
git add后修改才会被Git跟踪为“待提交状态”。
2.3 git commit
git commit- 用途:将暂存区的内容提交到本地仓库,生成一条版本记录(含提交者、时间、提交说明等)。
- 语法:
git commit -m "提交说明"(-m必须,用于填写本次提交的描述);也可使用git commit -a -m "提交说明"(-a自动将已跟踪文件的修改加入暂存区,再提交,但新增文件仍需先git add)。 - 示例:
git commit -m "修复登录功能的表单验证bug",将暂存区的修改提交到本地仓库。
2.5 git log
- 用途:查看本地仓库的提交历史(含所有版本的哈希、作者、时间、提交说明)。
- 语法:
- 默认详细格式:
git log - 简洁格式(哈希+提交说明):
git log --pretty=oneline或git log --oneline - 过滤作者:
git log --author="你的用户名" - 过滤时间:
git log --since="2025-10-01"(查看2025年10月1日后的提交)
- 默认详细格式:
- 示例:
git log --oneline,输出类似a1b2c3d 新增用户注册功能的简洁历史。
2.6 git stash & git stash pop
-
git stash- 用途:临时“储藏”工作区和暂存区的修改(比如中途需要切换分支处理紧急任务,又不想提交未完成的代码时使用)。
- 语法:
- 简单储藏:
git stash - 带说明的储藏:
git stash save "储藏说明"(如git stash save "未完成的登录页样式修改") - 查看储藏列表:
git stash list(会显示如stash@{0}: On main: 未完成的登录页样式修改)
- 简单储藏:
- 示例:执行
git stash后,工作区和暂存区的修改会被临时隐藏,代码回到上一次提交的状态。
-
git stash pop- 用途:恢复最近一次的储藏,并从储藏列表中删除该条记录。若要恢复指定储藏,可使用
git stash apply stash@{n}(n是储藏的索引,如stash@{0}是最近一次)。 - 示例:
git stash pop会将最近储藏的修改恢复到工作区,同时清空该储藏;若执行git stash apply stash@{1},则恢复第2条储藏(索引从0开始),且该储藏仍保留在列表中。
- 用途:恢复最近一次的储藏,并从储藏列表中删除该条记录。若要恢复指定储藏,可使用
2.8 git clone & git push & git pull
-
git clone- 用途:将远程仓库的代码“克隆”到本地,生成一个与远程仓库一致的本地仓库(首次获取远程代码时使用)。
- 语法:
git clone 远程仓库地址 [本地目录名](本地目录名可选,不写则默认用远程仓库名作为本地文件夹名)。 - 示例:
git clone https://github.com/yourname/study-app.git,会在当前目录创建study-app文件夹,包含远程仓库的所有代码和版本历史。
-
git push- 用途:将本地仓库的提交推送到远程仓库(多人协作时同步代码到服务器)。
- 语法:
git push [远程仓库名] [本地分支名]:[远程分支名](默认远程仓库名是origin,若本地和远程分支名一致,可简化为git push origin 分支名)。 - 示例:
git push origin feature/login:main,将本地feature/login分支的提交推送到远程main分支;若分支名一致,可直接git push origin main。
-
git pull- 用途:拉取远程仓库的更新到本地,并与本地分支合并(相当于
git fetch+git merge,用于同步远程最新代码)。 - 语法:
git pull [远程仓库名] [远程分支名]:[本地分支名](通常简化为git pull origin 分支名)。 - 示例:
git pull origin main,拉取远程main分支的更新,并合并到本地当前分支;若想以“变基”方式合并(避免多余的合并提交),可使用git pull --rebase origin main(需注意冲突处理)。
- 用途:拉取远程仓库的更新到本地,并与本地分支合并(相当于
掌握这些命令的使用,就能覆盖Git“本地开发→版本管理→远程协作”的核心工作流,满足个人开发和团队协作的基本需求。
二、 路径
pwd查看当前文件路径ls查看当前文件目录cd d:进入D文件夹cd folder/tes进入当前盘的folder/test文件夹下cd ../返回上一个文件夹,如果要返回多个就输入几个../../- 设置pwd的默认路径/起始位置
- 右击
git-bash.exe,然后点击属性,修改起始位置:
- 右击

- 路径区分大小写
- 请支持正版,文章都是免费。防侵权,原作者博客MrFlySand
三、上传文件

git status查看暂存区
- 红色代表本地仓库
- 绿色代表暂存区
git add file.txt添加文件到暂存区
git add .跟踪项目文件夹中的所有文件和文件夹添加到暂存区git commit -m "文件操作描述"文件的描述。在书写时最好加上"(双引号),当出现No such file or directory时就是因为没有添加双引号或单引号.git push从暂存区上传到远程仓库- 注意:当文件被修改后,上传相同名字的文件,新的文件会覆盖原来的文件。上传文件时,路径区分大小写。
git add -u:-u选项会更新已经追踪的文件和文件夹

四、文件操作
删除文件
rm file.txt删除本地文件git add file.txt将本地删除的操作添加到暂存区git push将暂存区的操作添加到远程仓库git checkout file.txt恢复刚刚删除的文件
修改文件名
git mv -f oldFileName newFileName:将文件名oldFileName改为newFileName

五、版本控制/回退
介绍:将远程仓库的版本回退到本地
git log查看所有版本信息git log --pretty=oneline简洁log版本git reset --hard 版本号,版本号前面几位及可

六、其它
clear清空当前窗口信息exit退出窗口mkdir folder创建文件夹touch file.txt创建文件git mv -f oldFileName newFileName将文件名oldFileName改为newFileName- 修改文件or文件夹名称
git add -u"-u"选项会更新已经追踪的文件和文件夹git init:创建一个 .git的文件夹,在文件内初始化git(创建git仓库)
03 要让VS Code的时间线直接显示年月日小时分钟,可以通过修改设置文件来实现。具体步骤如下:
-
打开设置文件:
- 按下
Ctrl + Shift + P(或Cmd + Shift + PmacOS)打开命令面板。 - 输入
Preferences: Open Settings (JSON)并回车,打开settings.json文件。
- 按下
-
添加时间格式配置:
在settings.json中加入以下配置(使用 Moment.js 格式语法):"timeline.dateFormat": "yyyy-MM-dd HH:mm"该配置会让时间线的时间显示为“年-月-日 时:分”,例如
2025-10-24 16:30。 -
保存并生效:
保存settings.json文件后,VS Code的时间线会自动更新为新的时间格式。
如果需要更详细的格式(如包含秒),可调整为:
"timeline.dateFormat": "yyyy-MM-dd HH:mm:ss"
这样时间线会显示为 2025-10-24 16:30:45。

浙公网安备 33010602011771号