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

相关推荐
Tiny21419 分钟前
多人协同开发时Git使用命令
git
WebGirl1 小时前
代码Revert后再次Merge会丢失的问题
git
小皮侠6 小时前
nginx的使用
java·运维·服务器·前端·git·nginx·github
HalukiSan7 小时前
如何提交PR
git·gitlab·github
爱莉希雅&&&18 小时前
shell编程之awk命令详解
linux·服务器·git
baiyu3319 小时前
成为git砖家(12): 看懂git合并分支时冲突提示符
git
wu_aceo1 天前
将本地项目提交到Gitee
git·gitee·提交·本地提交·上传git
随便取个六字1 天前
GIT操作 学习
git·学习
星源~2 天前
tree 命令集成到 Git Bash:可视化目录结构的指南
git·单片机·物联网·嵌入式·项目开发
zhaqonianzhu2 天前
git gerrit安装钩子
git·gerrit