常用git命令合集

配置信息

查看用户名和邮箱地址:

git config user.name
git config user.email

修改用户名和邮箱地址

git config --global user.name “xxxx”
git config --global user.email “xxxx”

生成密钥

ssh-keygen -t rsa -C “email”
按3个回车,密码为空。

基础操作
命令说明
git diff查看修改信息
git diff filePath查看文件变动信息
git add .添加所有修改
git checkout filename撤销此文件的修改
git checkout .撤销所有未提交的修改
git commit -m “提交信息”提交代码
git commit进入vim界面添加提交信息(比较详细)
git push上传提交到服务器
log操作
命令说明
git log查看提交历史记录
git log --oneline 或者 git log --pretty=oneline以精简模式显示
git log --stat显示文件更改列表
git log --author= ‘name’显示某个作者的日志
git log -p filepath查看某个文件的详细修改
git log -L start,end:filepath查看某个文件某几行范围内的修改记录
git log --stat commitId 或者 git show --stat commitId查看某一次提交的文件修改列表
tag相关命令
命令说明
git tag列出所有的tag
git tag name打轻量标签 name
git tag -d name删除本地的tag
git push origin --delete tag name删除远程的tag
git show name查看tag信息
git push origin name将tag提交到远程
隐藏与恢复
命令说明
git stash把当前的工作隐藏起来 等以后恢复现场后继续工作
git stash list查看所有被隐藏的文件列表
git stash apply恢复被隐藏的文件,但是内容不删除
git stash drop删除文件
git stash pop恢复文件的同时 也删除文件
git stash clear删除所有保存的信息
分支操作
命令说明
git branch查看本地分支
git branch -a查看本地和远程分支
git branch -vv列出本地分支和对应的远程分支及最新一条提交日志
git checkout -b branch_name添加新分支
git checkout branch_name切换本地分支
git branch -d branch_name删除本地分支,如果有为合并代码则删除失败
git branch -D branch_name强制删除本地分支
git push origin --delete branch_name删除远程分支
仓库操作
命令说明
git remote -v远程仓库路径查询
git remote add origin(本地版本库) url(远程仓库地址)添加远程仓库
git remote rm origin(远程仓库名)删除远程仓库
git remote rename old_name new_name修改仓库名
git remote add origin url(远程仓库地址)
git push -u origin master
上传到服务器
搜索
命令说明
git log --grep=“commit提交的关键字”搜索相关信息列表
reset 命令
命令说明
git reset HEAD^回退所有内容到上一个版本
git reset HEAD^ filename回退 filename 文件的版本到上一个版本
git reset commitId回退到指定版本
git reset --soft HEAD–soft 参数用于回退到某个版本
git reset --hard HEAD–hard 参数撤销工作区中所有未提交的修改内容,并删除之前的所有信息提交
补丁操作
命令说明
git diff > 0001.patch针对已修改的文件生成patch
git diff Test.java > test.patch针对Test.java的修改信息生成patch
git format-patch HEAD^ 或 -1生成最近的1次commit的patch
git format-patch commitId1…commitId2生成两个commit间的修改的patch(生成的patch不包含commitId1)
git format-patch -1 commitId生成单个commit的patch
git format-patch commitId生成从commitId以来的修改patch(不包含该commitId)
git format-patch --root commitId生成从根到commitId提交的所有patch
git apply --stat 0001-.patch查看patch的情况
git apply --check 0001-.patch检查patch是否能够打上,如果没有任何输出,则说明无冲突,可以打上
git apply xxx.patch打补丁到项目中
git apply --reject xxx.patch强制打补丁
统计

查看个人代码量
git log --author=“username” --pretty=tformat: --numstat | awk ‘{ add += $1; subs += $2; loc += $1 - $2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’ -

统计个人某个时间段提交的代码量
git log --author=“name” --since=2022-01-01 --until=2022-02-01 --pretty=tformat: --numstat | awk ‘{ add += $1; subs += $2; loc += $1 - $2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’

统计每个人增删行数
git log --format=‘%aN’ | sort -u | while read name; do echo -en “KaTeX parse error: Undefined control sequence: \t at position 5: name\̲t̲"; git log --au…name” --pretty=tformat: --numstat | awk ‘{ add += $1; subs += $2; loc += $1 - $2 } END { printf “added lines: %s, removed lines: %s, total lines: %s\n”, add, subs, loc }’ -; done

提交统计
git log --oneline | wc -l

提交者排名前3
git log --pretty=‘%aN’ | sort | uniq -c | sort -k1 -n -r | head -n 3

GIT官方文档:点击这里
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值