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

相关推荐
南菠湾2 小时前
How to set up SSH, Git and Copilot Extensions in Visual Studio Code
git·ssh·copilot
貂蝉空大13 小时前
Git 常用命令大全
git
兔斯基灬木木16 小时前
【技术工具】源码管理 - GIT工具
git
工呈士18 小时前
Git 工作流与版本管理策略
前端·git·面试
C++ 老炮儿的技术栈18 小时前
文本文件与二进制文件的区别
大数据·c语言·开发语言·c++·git·算法·visual studio
Jooolin1 天前
【编程史】Gitee是啥?它和GitHub关系是什么?
git·github·ai编程
貂蝉空大1 天前
Git Switch 与 Git Restore 详解
git
aini_lovee1 天前
python在容器内克隆拉取git私有仓库
git·python·elasticsearch
zhangphil1 天前
git merge合并分支push报错:Your branch is ahead of ‘xxx‘ by xx commits.
git