Git常用命令

目录


• 查看帮助

⑴查看帮助

bash 复制代码
$ git -h
#或
$ git --help
#或
$ git help

⑵查看命令的手册页

(比如 git help config )

bash 复制代码
$ git help <command>
#或
$ git -h <command>

⑶查看命令的参数选项

(比如 git config -h )

bash 复制代码
$ git <command> -h

⑷查看Git手册页

bash 复制代码
$ git help git

• 配置

⑴配置用户名和邮件地址

①配置用户名

bash 复制代码
$ git config --global user.name "用户名"

②配置邮件地址

bash 复制代码
$ git config --global user.email 邮件地址

⑵查看配置

①列出配置

bash 复制代码
$ git config -l
#或
$ git config --list

②查看所有的配置及配置所在文件

bash 复制代码
$ git config -l --show-origin

③查看全局配置

bash 复制代码
$ git config --global -l

• 创建Git仓库

创建一个新的Git仓库

bash 复制代码
#将本地目录初始化为Git仓库
$ git init
#跟踪所有文件
$ git add .
#提交(使用给定的<msg>作为提交消息)
$ git commit -m <msg>

推送到GitHub

bash 复制代码
#使用git remote add命令将远程URL和默认远程仓库简写(origin)相关联
$ git remote add origin <url>
#重命名分支
$ git branch -M main
#推送(首次推送)
$ git push -u origin main

• 克隆仓库

(比如 git clone git@github.com:xxx/repositoryName.git)

bash 复制代码
$ git clone <url>

• 查看状态

⑴显示状态

bash 复制代码
$ git status

⑵精简显示状态

bash 复制代码
$ git status -s
#或
$ git status --short

• 跟踪文件

⑴跟踪指定文件

(跟踪指定文件并将该文件放入暂存区;把已跟踪、且已修改的文件放入暂存区;把有冲突的文件标记为已解决状态)

bash 复制代码
$ git add <文件>

⑵跟踪所有文件

bash 复制代码
$ git add .

• 提交文件

⑴将暂存区内容提交到Git目录

bash 复制代码
$ git commit -m <msg>

⑵跳过暂存区提交内容到Git目录

bash 复制代码
$ git commit -a -m <msg>

• 移除文件

⑴从工作区手动移除文件

(手动移除文件后,运行 git rm <文件名> 记录移除,在下次提交时,文件就不纳入版本管理了)

bash 复制代码
$ git rm <文件>

⑵从Git仓库中移除文件

①从Git仓库和工作区中同时移除对应文件

bash 复制代码
$ git rm -f <文件>

②移除Git仓库的文件,保留工作区的文件

bash 复制代码
$ git rm --cached <文件>

⑶从暂存区移除文件

①从暂存区移除指定文件

bash 复制代码
$ git reset HEAD <文件>

②从暂存区移除所有文件

bash 复制代码
$ git reset HEAD .

• 撤销

⑴撤销对文件的修改

①撤销对指定文件的修改

bash 复制代码
$ git checkout -- <文件>

②撤销对所有文件的修改

bash 复制代码
$ git checkout .

⑵修改提交的说明

bash 复制代码
$ git commit --amend

⑶其他

• 查看提交历史

⑴显示提交历史

bash 复制代码
$ git log

⑵显示提交历史(最近数量的提交历史)

(比如 git log -2 显示最近2次的提交历史)

bash 复制代码
$ git log -数量

⑶显示提交历史(按行显示+简写/完整哈希值)

bash 复制代码
#按行显示提交历史(简写哈希值)
$ git log --oneline
#按行显示对应数量的提交历史(简写哈希值)
$ git log -数量 --oneline

#按行显示提交历史(完整哈希值)
$ git log --pretty=oneline
#按行显示对应数量的提交历史(完整哈希值)
$ git log -数量 --pretty=oneline

⑷显示提交历史(简略统计信息)

bash 复制代码
$ git log --stat

⑸显示提交历史(定制记录的显示格式)

(比如 git log --pretty=format:"%H - %s, %cd")

bash 复制代码
$ git log --pretty=format:"格式"

表格: git log --pretty=format 常用的选项

选项 说明
%H 提交的完整哈希值
%h 提交的简写哈希值
%T 树的完整哈希值
%t 树的简写哈希值
%P 父提交的完整哈希值
%p 父提交的简写哈希值
%an 作者名字
%ae 作者的电子邮件地址
%ad 作者修订日期(可以用 --date=选项 来定制格式)
%ar 作者修订日期,按多久以前的方式显示
%cn 提交者的名字
%ce 提交者的电子邮件地址
%cd 提交日期
%cr 提交日期(距今多长时间)
%s 提交说明

• 回退版本

查看提交历史

bash 复制代码
$ git log --oneline

指定版本

bash 复制代码
$ git reset --hard <提交的哈希值>

重新查看提交历史

bash 复制代码
$ git log --reflog --oneline

重新指定版本

bash 复制代码
$ git reset --hard <提交的哈希值>

• 远程仓库

⑴查看远程仓库

①查看远程仓库的名字

bash 复制代码
$ git remote

②查看远程仓库使用的Git保存的简写与其对应的URL

bash 复制代码
$ git remote -v

③查看某个远程仓库

(比如 git remote show origin)

bash 复制代码
$ git remote show <远程仓库>

⑵添加远程仓库

(比如 git remote add origin git@github.com:xxx/repositoryName.git )

bash 复制代码
$ git remote add <远程仓库> <url>

⑶从远程仓库抓取

bash 复制代码
$ git pull

⑷推送到远程仓库

①推送(首次推送)

(比如 git push -u origin main )

bash 复制代码
$ git push -u <远程仓库> <分支>

②推送分支到远程仓库

(比如 git push origin main(推送main分支到origin远程仓库))

bash 复制代码
$ git push <远程仓库> <分支>

③推送

bash 复制代码
$ git push

⑸删除远程分支

bash 复制代码
$ git push <远程仓库> --delete <分支>

⑹重命名远程仓库

bash 复制代码
$ git remote rename <旧名> <新名>

⑺移除远程仓库

bash 复制代码
$ git remote remove <远程仓库>
#或
$ git remote rm <远程仓库>

• 分支

⑴创建分支

bash 复制代码
$ git branch <分支名>

⑵切换分支

bash 复制代码
$ git checkout <目标分支名>

⑶创建分支并切换到该分支

bash 复制代码
$ git checkout -b <分支名>

⑷合并分支

bash 复制代码
$ git merge <需要合并进来的的分支名>

⑸删除分支

bash 复制代码
$ git branch -d <分支>

⑹查看分支

①列出所有的分支列表

bash 复制代码
$ git branch

②列出已经合并到当前分支的分支

bash 复制代码
$ git branch --merged

③列出尚未合并到当前分支的分支

bash 复制代码
$ git branch --no-merged

• 标签

⑴列出已有标签

bash 复制代码
$ git tag

⑵创建标签

①创建轻量标签

(比如 git tag v1.0 )

bash 复制代码
$ git tag <标签名>

②创建附注标签

(比如 git tag -a v1.1 -m "version 1.1" )

bash 复制代码
$ git tag -a <标签名> -m <msg>

⑶查看标签

bash 复制代码
$ git show <标签名>

⑷推送标签到远程仓库

①推送指定标签

bash 复制代码
$ git push origin <标签名>

②推送所有不在远程仓库的标签到远程仓库

bash 复制代码
$ git push origin --tags

⑸删除标签

①删除本地标签

bash 复制代码
$ git tag -d <标签名>

②删除远程标签

bash 复制代码
$ git push origin --delete <标签名>

• 文件编辑

命令 描述 示例
cd < path > 切换到指定目录
cd .. 返回上级目录
ls 列出当前目录中的内容
ls a* 列出当前目录中以 'a' 开头的文件
ls *.txt 列出当前目录中以 '.txt' 结尾的文件
mkdir < 目录名 > 创建一个新的目录
cat < path > 显示之前创建的文本文件的内容
pwd 显示当前路径
clear 清除 shell 终端
相关推荐
int WINGsssss7 分钟前
Git使用
git
Good_Starry14 小时前
Git介绍--github/gitee/gitlab使用
git·gitee·gitlab·github
云端奇趣19 小时前
探索 3 个有趣的 GitHub 学习资源库
经验分享·git·学习·github
F_D_Z1 天前
【解决办法】git clone报错unable to access ‘xxx‘: SSL certificate problem:
网络·git·网络协议·ssl
等风来不如迎风去1 天前
【git】main|REBASE 2/6
git
艾伦~耶格尔1 天前
IDEA 配置 Git 详解
java·ide·git·后端·intellij-idea
云兮杜康1 天前
IDEA中用过git之后文件名颜色全变红
java·git·intellij-idea
睡不醒的小泽1 天前
git merge 和 git rebase
git
艾伦~耶格尔1 天前
Git 下载及安装超详教程(2024)
git·gitee·码仓
weixin_438197381 天前
linux部署redis,整合ansible和redis
linux·redis·git