查看git版本
git --version
设置/修改用户签名
系统用户
git config --system user.name 用户名
git config --system user.email 邮箱
全局用户
git config --global user.name 用户名
git config --global user.email 邮箱
本地库用户
git config user.name 用户名
git config user.email 邮箱
注意:这里的用户签名和登陆到代码托管中心(即远程库)的账号是无关的,可以是虚拟的(不存在的),是用来区分本地库中不同操作者身份的
查看用户签名
查看系统用户
git config --system user.name 查看用户名
git config --system user.email 查看邮箱
查看全局用户
git config --global user.name 用户名
git config --global user.email 邮箱
查看本地库用户
git config user.name 查看用户名
git config user.email 查看邮箱
查看配置
查看系统配置
git config --system --list
查看全局配置
git config --global --list
查看所有配置
git config --list
初始化本地库
git init
查看本地库状态
git status
将文件添加到暂存区(缓存区/临时区)
添加一个文件
git add 文件名称
添加多个文件
git add 文件名称 文件名称 文件名称 ...
git add *.txt *.html ...
提交本地库
git commit -m "提交备注信息" 文件名称
查看文件
查看工作区文件
ll
查看暂存区文件
git ls-files
查看本地库文件
git ls-files --with-tree=HEAD
删除文件
删除工作区中的文件
rm -f 文件名称
删除暂存区中的文件
git rm --cached 文件名称
删除本地库中的文件
git commit -m "提交信息"
注:要在删除暂存区后执行该命令
查看历史版本
git reflog 查看版本简单信息
git log 查看版本详细信息
git log -n --pretty=oneline 单行展示版本号
查看当前版本与上一版本的区别
git diff HEAD -- 文件名称
查看工作区和暂存区的区别
git diff 文件名称
查看暂存区和本地库的区别
git diff --cached 文件名称
版本穿梭(切换)
指定版本号
git reset --hard 版本号
切换到上一个版本
git reset --hard HEAD^
切换到上上一个版本
git reset --hard HEAD^^
以此类推……
往前回退n个版本
git reset --hard HEAD~n
创建分支
git branch 分支名称
创建并切换到新的分支上
git checkout -b 分支名称
拉取远程分支并在本地创建分支
git checkout -b 本地分支名 远程地址(别名)/远程分支名
重命名分支
git branch -m|-M 旧名 新名
查看分支(同时显示目前所在的分支)
git branch -v
git branch
查看所有分支(本地和远程)
git branch -a
删除本地分支
git branch -d 分支名称
删除远程分支
git push 远程地址(别名) :远程分支名
切换分支
git checkout 分支名称
合并分支
git merge 分支名称 (把指定的分支合并到当前分支上)
查看提交历史(包含冲突解决)
git log --graph --pretty=oneline
查看当前项目所有远程地址及别名
git remote -v
为远程地址起别名
git remote add 别名 远程地址
将远程仓库的内容克隆到本地
git clone 远程地址
推送本地分支上的内容到远程仓库
git push 远程地址(或别名) 分支名称
将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并
git pull 远程地址(或别名) 远程分支名称
生成ssh密钥(用于免密登陆)
ssh -keygen -t rsa -C 邮箱
查看ssh密钥
cat .ssh/id_rsa.pub
新建标签
git tag 标签名称
新建标签并添加注释
git tag -a 标签名称 -m 标签注释
查看所有标签
git tag
将本地标签推送到远程
git push 远程地址(别名) 标签名称
将本地所有未推送的标签推送到远程
git push 远程地址(别名) --tags
删除本地标签
git tag -d 本地标签名称
删除远程标签
git push 远程地址(别名) :refs/tags/远程标签名称
获取远程最新分支
git fetch