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

相关推荐
hadage2334 小时前
--- git 的一些使用 ---
开发语言·git·python
4***V20210 小时前
GitLab Pages配置
git·gitlab·github
CelineCoding10 小时前
git 处理异常操作
git
E***q53911 小时前
Git版本控制常见问题
git
sulikey16 小时前
从入门到精通:如何自己编写高质量的 .gitignore(面向工程实践)
git·gitee·编辑器·gitlab·github·gitignore·gitattributes
青靴19 小时前
轻量级 CI/CD:Git Hooks 自动部署 Node.js 应用(CICD-demo)
git·ci/cd·node.js
哟哟耶耶21 小时前
git-git cherry-pick(从分支挑选特定提交-哈希值)更改应用到当前分支
git
无限进步_1 天前
C语言动态内存管理:掌握malloc、calloc、realloc和free的实战应用
c语言·开发语言·c++·git·算法·github·visual studio
程序员馨馨1 天前
git常用命令学习以及冲突解决
git·功能测试·学习
1***81531 天前
Git游戏开发案例
git