git常用命令

git常用命令速查

      • [查看配置信息:git config ---list](#查看配置信息:git config —list)
      • [查看 git 命令的具体用法](#查看 git 命令的具体用法)
      • [克隆远程仓库:git clone url](#克隆远程仓库:git clone url)
      • [在已存在的目录上初始化仓库:git init](#在已存在的目录上初始化仓库:git init)
      • [查看仓库中文件状态:git status](#查看仓库中文件状态:git status)
      • [跟踪新文件:git add](#跟踪新文件:git add)
      • [暂存已修改的文件:git add](#暂存已修改的文件:git add)
      • [忽略文件 .gitignore](#忽略文件 .gitignore)
      • [查看已暂存文件和未暂存文件之间修改的变化:git diff](#查看已暂存文件和未暂存文件之间修改的变化:git diff)
      • [提交更新:git commit](#提交更新:git commit)
      • [移除文件: git rm](#移除文件: git rm)
      • [移动文件:git mv soure destination](#移动文件:git mv soure destination)
      • [查看提交历史:git log](#查看提交历史:git log)
      • [版本穿梭:git reset ---hard <版本号>](#版本穿梭:git reset —hard <版本号>)
      • [查看分支:git branch -v](#查看分支:git branch -v)
      • [创建一个新的分支:git branch <分支名>](#创建一个新的分支:git branch <分支名>)

查看配置信息:git config ---list

git config --list

查看 git 命令的具体用法

git help <verb>git <verb> --helpman git-<verb> ,这三种命令是等价的,其中 <verb> 指 git 的命令,输入这三种命令,会弹出查询命令的详细手册;

若只是想在命名行中查询该命令的可选项,可以使用命令 git <verb> -h

克隆远程仓库:git clone url

git clone <url>

例如:git clonehttps://github.com/libgit2/libgit2

如果想在克隆远程仓库的时候,自定义本地仓库的名字,可以通过额外的参数指定新的目录名;

git clone <url> newDirname

例如:git clonehttps://github.com/libgit2/libgit2mylibgit

在已存在的目录上初始化仓库:git init

如果你想对一个项目目录进行版本控制,切换到该目录下,执行 git init 命令,该文件夹下就会创建一个名为 .git 的子目录,然后就可以对该项目目录下的文件进行版本控制;

查看仓库中文件状态:git status

git status 命令可以查看该项目目录下各文件的状态;

该命令后面可以接文件名或目录名,表示查看该文件或该目录的状态;

跟踪新文件:git add

在一个进行版本控制的项目目录下创建了一个新文件时,是没有对该文件进行跟踪的,需要使用命令 git add filename 对文件进行跟踪,若filename为目录名,则会递归地跟踪该目录下的所有文件;

新文件执行了 git add filename 命令后,状态为暂存状态;

暂存已修改的文件:git add

把已跟踪的文件放到暂存区,git add filename

忽略文件 .gitignore

有些文件是不需要纳入Git的管理,例如日志文件,存放数据的文件夹等,我们不希望这些文件总是出现在未跟踪的文件列表中,一般的做法是创建一个名为 .gitignore 的文件,在该文件中列出要忽略的文件的模式。

markdown 复制代码
# 忽略所有的 .a 文件
*.a
# 但跟踪所有的 lib.a,即便你在前面忽略了 .a 文件
!lib.a
# 只忽略当前目录下的 TODO 文件,而不忽略 subdir/TODO
/TODO
# 忽略任何目录下名为 build 的文件夹
build/
# 忽略 doc/notes.txt,但不忽略 doc/server/arch.txt
doc/*.txt
# 忽略 doc/ 目录及其所有子目录下的 .pdf 文件
doc/**/*.pdf

查看已暂存文件和未暂存文件之间修改的变化:git diff

命令 git diff 能通过文件补丁的格式更加具体地显示哪些行发生了改变;

git diff 命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容;注意:git diff 命令本身只显示尚未暂存的改动,而不是自上次提交以来所做的所有改动;

若要对比已暂存文件与最后一次提交的文件差异,可以使用命令 git diff --staged

提交更新:git commit

命令 git commit 将暂存区的文件提交,输入命令后会启动编辑器,如下所示:

在编辑器中的第一行是个空行,用来输入提交说明;输入提交说明后,保存并退出编辑器,就提交成功了,如下图所示:

也可以在 commit 命令后添加 -m 选项,在-m 选项后面输入提交信息,将提交信息与命令放在同一行,注意:输入信息要用引号引起来 ,如下图所示:

命令git commit -a 将使暂存区的文件一并提交,即使暂存区的文件还没有使用命令 git add 将暂存区的文件提交到工作区;

移除文件: git rm

命令 git rm 将使文件不在被跟踪,并且Git将删除这个文件,即从磁盘中删除该文件,然后使用命令 git commit ,删除操作将不可撤回;

使用命令 git rm --cached <file>使文件不再被Git跟踪,但依然保存在磁盘上;也即将文件移出暂存区,但不会将文件从磁盘中删除。

移动文件:git mv soure destination

将文件或目录移动到指定目录下,或将文件重命名;

查看提交历史:git log

命令 git log 查看项目的提交历史(详细信息),更多选项使用命令 git help log 查看;

git reflog 查看版本信息

版本穿梭:git reset ---hard <版本号>

git reset --hard <version_id> 回到某个历史版本

查看分支:git branch -v

创建一个新的分支:git branch <分支名>

创建一个名为 hot-fix 的新分支,git branch hot-fix

相关推荐
研究是为了理解3 小时前
Git Bash 常用命令
git·elasticsearch·bash
DKPT4 小时前
Git 的基本概念和使用方式
git
Winston Wood7 小时前
一文了解git TAG
git·版本控制
喵喵先森8 小时前
Git 的基本概念和使用方式
git·源代码管理
xianwu5439 小时前
反向代理模块
linux·开发语言·网络·git
binishuaio11 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
会发光的猪。12 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
stewie613 小时前
在IDEA中使用Git
java·git
晓理紫1 天前
使用git lfs向huggingface提交较大的数据或者权重
git
我不是程序猿儿1 天前
【GIT】sourceTree的“当前分支“,“合并分支“与“检出分支的区别
git