git的操作(Operation of Git)

下载git,以archlinux为例:yay -S git

  • git分为三个区

    • 暂存区:工作区的变更提交到暂存区

    • 工作区:存放文件的地方

    • 版本库:暂存区的内容提交到版本库

git 复制代码
# 新建
# 在当前目录初始化git代码库
git init
# 将指定目录新建并初始化为git代码库
git init [dir]
# 克隆一个项目到本地
git clone [url]


# 文件操作
# 将当前目录下的所有文件添加到暂存区
git add .
# 将指定文件添加到暂存区
git add f1 f2 ...
# 将指定目录及其子目录添加到暂存区
git add [dir]
# 将暂存区的文件拉回工作区
git reset HEAD
# 删除工作区文件,并将删除的文件放入暂存区
git rm f1 f2 ...
# 重命名文件,并将此次操作放入暂存区
git mv old_name new_name
# 将暂存区的内容提交到仓库
git commit -m [msg]
# 将暂存区的指定文件提交到仓库
git commit f1 f2 ... -m [msg]
# 提交时显示所有的diff信息
git commit -v
# 若代码未发生改变,则修改上一次commit的msg
git commit --amend -m [msg]

# 配置
# 显示当前git的配置
git config --list
# 编辑git配置文件
git config -e [--global]
# 设置提交代码时的用户信息
git config [--global] user.name "name"
git config [--global] user.email "email"

# 分支
# 列出本地所有分支
git branch
# 列出所有远程分支
git branch -r
# 列出所有本地和远程分支
git branch -a
# 新建分支,但是不切换
git branch [branch_name]
# 新建分支并切换
git checkout -b [branch]
# 切换分支
git checkout [branch_name]
# 新建一个分支,指向指定commit
git branch [branch_name] [commit]
# 新建一个分支与指定的远程分支建立追踪关系
git branch --track [branch] [remote_branch]
# 合并指定分支到当前分支
git merge [bracnch]
# 选自一个commit合并到当前分支
git cherry-pick [commit]
# 删除分支
git branch -d [branch_name]
# 删除远程分支
git branch origin --delete
git branch -dr

# 远程同步
# 下载远程仓库的所有变动
git fetch [remote]
# 显示所有远程仓库
git remote -v
# 显示某个远程仓库的信息
git remote show [remote]
# 添加一个远程仓库并命名
git remote add [name] [remote_url]
# 拉取远程分支的变化,并合并到本地分支
git pull [remote] [branch]
# 上传本地指定分支到远程仓库
git push [remote] [branch]
# 强制推送当前分支到远程仓库
git push [remote] --force
# 推送所有分支到远程仓库

# 查看信息
# 显示所有有变更的文件
git status
# 显示当前分支的详细版本历史
git log
# 显示当前分支的简单版本历史
git reflog
# 显示暂存区和工作区的区别
git diff
# 回退到某个版本
git reset --hard 版本号
相关推荐
泡沫冰@几秒前
基于Git、Jenkins、Podman、ECS的CI/CD实践
git·jenkins·podman
zfoo-framework1 小时前
git拦截大于5M文件
git
马里马里奥-4 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
git
2401_853448238 小时前
Git安装流程和基础使用步骤
git·github
j7~11 小时前
【Git】《Git 系列指南(一):初识Git和安装Git配置》
运维·git·git版本控制器·git安装步骤
Sagittarius_A*13 小时前
Web 安全之 Git 泄露:原理剖析 + CTFHub Log/Stash/Index 全题型解法
git·安全·web安全
lazy H14 小时前
从入门到日常开发,一篇文章掌握 Git 核心操作
git·后端·学习·github
zzqssliu1 天前
煤炉自动代拍系统的队列设计与超时控制机制
git·github
一支绝命钩1 天前
FPGA工程Git常用操作手册
git
不搞学术柒柒1 天前
Git新功能完整开发提交流程
git