Git 使用总结
一、Git 基础操作
1. 初始化仓库
git init
在当前文件夹创建一个新的 Git 仓库。如果有现成仓库git clone就不需要
2. 克隆远程仓库
git clone <仓库地址>
克隆远程仓库代码到本地。
3. 查看状态
git status
查看当前代码变动情况、哪些文件被修改但未提交。
4. 添加到暂存区
git add <文件名>
# 或添加所有改动
git add .
将文件变动添加到 Git 暂存区。
5. 提交改动
git commit -m "提交说明"
将暂存区的变动提交到本地仓库。
6. 查看提交记录
git log
查看提交历史。
二、分支管理
1. 查看本地分支
git branch
2. 创建新分支
git branch <分支名>
3. 切换分支
git checkout <分支名>
4. 创建并切换新分支
git checkout -b <分支名>
5. 删除分支
git branch -d <分支名>
三、远程操作
1. 查看远程仓库
git remote -v
2. 添加远程仓库
git remote add origin <地址>
3. 推送代码
git push origin <分支名>
首次推送:
git push -u origin <分支名>
4. 拉取更新
git pull
5.一次性推送所有分支
git push origin --all
#只会推送“本地存在且未推送”的分支。
#远程仓库不会自动创建你没推送的分支(要你明确 push)。
#如果你只改了主分支,没必要推送其他空分支。
#不会推送tag
四、常用技巧与救命命令
1. 修改最后一次提交说明
git commit --amend
2. 撤销已暂存(git add
)的文件
git reset HEAD <文件名>
3. 丢弃文件的本地更改
git checkout -- <文件名>
4. 丢弃所有未提交的更改(危险)
git reset --hard
五、stash:临时保存工作区改动
1. 保存当前更改
git stash
2. 恢复最新的 stash
git stash pop
3. 查看 stash 列表
git stash list
六、Tag 打标签
1. 创建标签
git tag v1.0
2. 推送标签到远程
git push origin v1.0
git push origin --tags #推送所有tag
七、常见实战场景
✅ 切换分支时保留本地更改
git stash
git checkout 新分支
git stash pop
✅ 覆盖本地文件为远程最新
git fetch origin
git reset --hard origin/分支名
✅ 从远程某版本恢复文件
git checkout <commit-id> <文件名>
✅ 合并冲突时使用某一方版本
使用 theirs:
git checkout --theirs <文件名>
使用 ours:
git checkout --ours <文件名>
八 易混点区分
✅1. git add
vs git stash
区别总结
项目 | git add |
git stash |
---|---|---|
作用 | 将文件修改加入“暂存区” | 临时保存 当前所有修改,清空工作区 |
使用目的 | 准备好提交(配合 git commit ) |
先不提交,切分支/处理紧急问题时临时存放修改 |
使用场景 | 正常开发流程中,准备将某些改动纳入版本控制 | 写到一半、临时中断、需要切换分支但不想提交未完成代码 |
是否清空改动 | 否,改动还在工作区中 | 是,stash 后工作区干净(改动被保存在 stash 中) |
是否会提交 | 是,最终会通过 commit 提交到版本历史中 |
否,stash 不会生成新的提交历史 |
恢复方式 | 不需要恢复,直接 commit 即可 |
使用 git stash pop 或 git stash apply 恢复临时改动 |
总结
Git 是一把瑞士军刀,熟练掌握它能极大提升你的开发效率。记住以下三点:
- 多用
git status
和git log
观察状态。 - 大胆操作,勇于尝试,前提是先学会备份(如
stash
和commit
)。 - 出错不要慌,Git 几乎都能救回来。
推荐工具:
- Git 官方文档(中文)
- 图形化工具推荐:
希望这篇总结能帮你打好 Git 基础,有问题欢迎留言交流!
Happy Coding 🚀