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

相关推荐
上单带刀不带妹4 小时前
Git rm 命令与系统 rm 命令的区别详解
git
我的收藏手册8 小时前
性能监控shell脚本编写
前端·git·github
Yvonne爱编码10 小时前
简述ajax、node.js、webpack、git
前端·git·ajax·webpack·node.js·visual studio
2501_920047031 天前
git在Linux中的使用
linux·git·elasticsearch
小马哥编程1 天前
DNS解析中的服务器协作机制
服务器·git·github
白帽小野1 天前
SVN和Git两种版本管理系统对比
git·svn·版本控制系统
rivercoder1 天前
Gitea:轻量级的自托管Git服务
git·gitlab·gitea
呜喵王阿尔萨斯2 天前
git命令解析
c++·git
Doris_LMS3 天前
Git的强软硬回退(三)
运维·服务器·数据库·git·idea
瓜酷月..3 天前
GIT(了解)
git