Git使用

一、工作机制

工作区 → `git add` → 暂存区 → `git commit` → 本地仓库 → `git push` → 远程仓库

git checkout:撤销工作区的修改(还没有暂存)

git reset HEAD:暂存区退回到工作区

git reset --soft HEAD~1:撤销最后一次提交

1、初始化本地库

git init

2、克隆远程仓库(自动完成初始化git init)

git clone 远程仓库URL

3、查看状态

检查文件修改状态(红色:未跟踪/修改。绿色:已暂存)

git status

4、添加文件到暂存区

git add 文件名 //添加特定文件
git . //添加所有改动

5、提交到本地仓库

提交到暂存区,并附加描述

git commit -m "提交描述"

提交所有已跟踪文件的修改(跳过 git add)

git commit -a -m "提交描述"

6、推送到远程仓库

首次推送(需关联分支)

git push -u origin <分支名>

后续推送

git push

7、拉取远程更新

拉去远程分支并合并

git pull

等价于:

git fetch && git merge

8、撤销操作

撤销工作区修改(危险!不可恢复):

git checkout -- <文件名>

撤销暂存区的文件(暂存区回退到工作区):

git reset HEAD <文件名>
git reset HEAD //撤销所有暂存区的修改

撤销最后一次提交(soft ):

如果当前文件在修改,则不会还原为之前的状态,只是回到git add后的状态(保留当前修改内容)

git reset --soft HEAD~1

撤销最后一次提交(hard):

如果当前文件在修改,所有未提交(commit)的修改会删除(注意),回退到上一次提交的状态。

git reset --hard HEAD~1

9、分支操作

创建分支:

git branch <分支名>

切换分支:

git checkout <分支名>

创建并切换分支:

git checkout -b <分支名>

合并分支(如合并到main):

git checkout main
git merge <分支名>

10、查看历史

简洁版日志:

git log --oneline

带分支图的日志:

git log --graph --all

相关推荐
vibecoding日记2 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP4 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思5 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享5 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003965 天前
git切换当前分支到远程分支
git
ON10N5 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code