【Git】常见命令(仅笔记)

文章目录

创建/初始化本地仓库

sh 复制代码
git init

添加本地仓库配置项

sh 复制代码
git config -l #以列表形式显示配置项

git config user.name "ljh" #配置user.name
git config user.email "123123@qq.com" #配置user.email

git config --unset user.name #重置user.name
git config --unset user.email #重置user.email

git config --global user.name "ljh" #设置当前机器上所有的本地仓库配置
git config --global --unset user.name #gloal设置的也需要带gloal删除

git config [可加--global] alias.[别名] '本名'
#例:git config [--global] alias.st 'status'
git status = git st

提交文件

sh 复制代码
git add [file] #将工作区的文件提交到暂存区
git add -f [file] #强制添加

git commit -m "描述" #将暂存区文件提交到版本库

查看仓库状态

sh 复制代码
git status #显示工作区和暂存区修改的文件

git diff [file] #查看工作区和暂存区 file 文件的区别

回退仓库

sh 复制代码
# 默认为 mixed
git reset --soft [commitID] [filename] #只回退版本库
git reset --mixed [commitID] [filename] #回退版本库和暂存区
git reset --hard [commitID] [filename] #都回退,版本库、暂存区、工作区 

git reset --mixed HEAD #HEAD表示版本库当前版本,HEAD^为上版本,HEAD^^为上上版本
#centenOS:可能因为mixed是默认方式,所以不用--mixed,直接-- 即可

git checkout -- [filename] #撤销,修改工作区,让工作区和暂存区一致?

查看日志

sh 复制代码
git log #查看日志
git log [file] #只查看指定文件的日志
git log --prettey=oneline #以列形式显示日志,好像是Ubentu的指令
git log -p #有格式的显示日志
git log --graph --abbrev-commit #图形化的显示日志
git log -n #显示前n行日志

git reflog #本地所有操作的日志

git cat-file -p [commitID] #查看objects对象

分支

shell 复制代码
git branch #查看所有分支,带*的是当前工作分支
git branch [name] #新建分支
git branch -d [name] #删除分支,只能删除其他分支,不能删除当前工作分支
git branch -D [分支] #强制删除分支

git branch -r #查看远程仓库的分支
git branch -a #本地和远程的分支都查看

git branch -v #查看本地分支信息
git branch -vv #查看本地和远程的分支连接

git branch --set-upstream-to=[远程分支] [本地分支] #建立连接

git remote show origin #查看remote地址,远程分支,还有和本地分支的对应信息等
git remote prune origin #删除远程仓库已删除的分支

git checkout [分支名] #切换分支
git checkout -b [分支名] #创建并切换分支
git checkout -b [分支名] [远程分支,例 origin/dev] #创建并切换,并建立连接

git merge [分支] #合并分支到当前工作分支
git merge --no-ff [分支] #非Fast Work模式,在git log中可以看到不同分支
git merge --no-ff -m "描述" [分支] 

删除文件

shell 复制代码
git rm [file] #删除并提交

暂存工作区代码

shell 复制代码
git stash #暂存工作区新代码
git stash list #查看都存了什么
git stash pop #将暂存的代码拿出来,恢复现场,但会删除stash中内容
git stash apply #恢复现场,但是不删除stash内容
git stash apply stash@{0} #恢复指定内容(现场)

远程仓库

shell 复制代码
git clone [链接] #克隆远程仓库

git push #将本地仓库的东西推送给远程仓库
git push [远程仓库名] [本地分支]:[远程分支]
git push [远程仓库] [分支] #若本地分支和远程分支,则只需写一个

git pull [远程仓库] [远程分支]:[本地分支] #将远程仓库新的东西拉取

git remote #查看远程仓库名称
git remove -v #显示本地仓库权限,fetch和push之类的

使用 .gitigore 文件让 git 不追踪一些文件

.gitignore文件

sh 复制代码
*.so #不追踪所有 .so结尾的文件

!b.so #不忽略 b.so
shell 复制代码
git check-ignore -v [文件] #查看该文件为何被忽略
git add -f [文件名] #强制添加文件

标签

shell 复制代码
git tag #查看有哪些标签
git tag [标签名,例v1.0] #给最近的 commit 打标签
git tag [标签名] [commit ID] #给指定的 commit 打标签
git tag -a [标签名] -m "描述" [commit ID] #打标签同时添加描述

git tag -d [标签名] #删除标签

git show [标签名] #显示标签详细信息

git push [仓库名,例:origin] [本地标签]:[远程标签]
git push [仓库名] --tags #将所有标签提交
# 删除远程分支的方式
# 先删除本地,再push
git tag -d [标签]
git push origin :[远程标签]

以上就是本篇博客的所有内容,感谢你的阅读

如果觉得本篇文章对你有所帮助的话,不妨点个赞支持一下博主,拜托啦,这对我真的很重要。

相关推荐
thinkMoreAndDoMore3 小时前
linux内核匹配I2C设备
linux·运维·服务器
小政同学8 小时前
【NFS故障】共享的文件无法执行
linux·运维·服务器
AI木马人8 小时前
3.【Prompt工程实战】如何设计一个可复用的Prompt系统?(避免每次手写提示词)
linux·服务器·人工智能·深度学习·prompt
ch3nyuyu8 小时前
Ubuntu(乌班图)基础指令
linux·运维·网络
minglie19 小时前
gcc编译器汇总
linux
daanpdf9 小时前
新视野大学英语视听说教程2第四版听力音频原文及答案
笔记
白菜欣10 小时前
Linux —《开发三件套:gcc/g++、gdb、make/Makefile 全解析》
linux·运维
一个程序猿老马10 小时前
012、远程协作:连接GitHub/Gitee与git remote
git·gitee·github
万法若空10 小时前
C++ <memory> 库全方位详解
开发语言·c++
代码中介商11 小时前
C++ 类型转换深度解析:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++