美文网首页
Git命令备忘

Git命令备忘

作者: Rakutens | 来源:发表于2023-01-28 11:25 被阅读0次

仓库信息

  • 查看仓库体积
    git count-objects -vH

用户操作

  • 记住用户名密码
    git config --global credential.helper store
    // 之后cd到项目目录,执行git pull命令,会提示输入账号密码。输完这一次以后就不再需要,并且会在根目录生成一个.git-credentials文件

  • 清除用户名和密码
    // 运行一下命令缓存输入的用户名和密码
    git config --global credential.helper wincred
    // 清除掉缓存在git中的用户名和密码
    git credential-manager uninstall

  • 清除未提交但暂存的内容
    git clean -d -x -n

  • 最后一条提交的Hash值(40位Hash)
    git rev-parse HEAD

  • 最后一条提交的Hash值(8位Hash)
    git rev-parse --short HEAD

  • 最后一条提交的Hash值(8位Hash)
    git rev-list HEAD --abbrev-commit --max-count=1

  • 最后一条全路径
    git describe --all --long

  • 历史记录(树形)
    git log --graph

  • 历史记录(指定develop分支、指定日期、指定关键词task|bug|story)
    git -C project-design log develop --first-parent --no-merges --grep="task|bug|story" --pretty=format:"%s" --abbrev-commit --after="2023-08-22"

  • 简化版历史记录(树形)
    git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %cn %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative

  • 历史记录(文本)
    // 40位Hash值
    git log --pretty=oneline
    // 8位Hash值
    git log --oneline

  • 最后一条提交记录(6位Hash)
    git log --pretty=oneline --abbrev-commit --abbrev=5 -1

  • 最后一条提交记录(多行)
    git show

  • 最后一条提交记录(单行,8位Hash)
    git show --oneline

  • 所有提交的Hash值
    git rev-list HEAD

  • 可能是提交次数
    git rev-list HEAD|wc -l

  • 添加一个提交
    git add .
    git commit -m 'create'
    git push


Config操作

  • 显示当前的Git配置
    $ git config --list

  • 编辑Git配置文件
    $ git config -e [--global]

  • 设置提交代码时的用户信息
    git config [--global] user.name "[name]"
    git config [--global] user.email "[email address]"


Branch操作

  • 查看所有分支
    // 本地
    git branch
    // 远程
    git branch -r

  • 查找branch名
    git branch --contains 'hash值'

  • 拉取指定分支
    git clone -o origin/[分支名] -b [tag名] [仓库地址]

  • 推送分支到远程
    git push origin [分支名]

  • 删除分支
    // 本地
    git branch -d [分支名]
    // 远程
    git branch -r -d origin/[分支名]


Tag操作

  • 查看全部Tag(仅标签名)
    git tag

  • 查看全部Tag(带时间)
    git for-each-ref --sort=taggerdate --format '%(refname) %(taggerdate)'
    // or 不同风格
    git log --tags --simplify-by-decoration --pretty="format:%ci %d"

  • 当前版本打标签
    git tag -a v1.4 -m 'version 1.4'
    git push origin v1.4

  • 指定版本打标签
    git tag -a v1.4 -m 'version 1.4' [commit-id]
    git push origin v1.4

  • 指定标签处再打个标签
    // 比其它打标签多一个-f
    git tag -f -a release-1.4 -m 'release 1.4' [指定tag标签]
    git push origin release-1.4
  • 推送所有标签到远程
    git push origin --tags

  • 查看指定标签的提交内容
    git show [tag标签]

  • 查看指定标签的文件内容
    git show v1.0.1:[文件名]

  • 查看某个提交的标签名
    git tag --points-at [commit-id]

  • 拉取指定Tag代码
    git checkout [tag标签]

  • 查看最后一个标签的hash值
    git rev-list --tags --max-count=1

-通过tag名查找hash值
git rev-parse [tag名]

  • 查看最后一个标签名
# tag_name-9位tag hash值
git describe --tags
# or 主分支最后一个tag_name
git describe --tags `git rev-list --tags --max-count=1` 
# or 当前分支最后第一个tag_name
git tag --sort=-taggerdate | head -n 1

  • 下载指定的Tag
    git clone --branch [tag标签] [git地址]

  • 删除本地标签
    git tag -d [tag标签]

  • 删除远程标签
    git push origin :refs/tags/[tag标签]

  • 删除所有本地标签并拉取远程标签
    方法一:

git tag -l | xargs tag -d | git fetch 

方法二:

git tag -d $(git tag -l)
git fetch --tags
  • 指定标签与指定提交作对比
    git diff [tag标签] [版本Hash]

  • 指定标签与当前版本作对比
    git diff [tag标签] HEAD

  • 下载特定的分支
    git clone -b [分支名称] [git地址]

  • 查看指定标签在哪个分支上
    git branch --contains [tag标签]

相关文章

  • git命令整理

    git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...

  • Git 相关

    Git相关的命令备忘 Git每次输入账号和密码在Git目录下执行命令: git config --global c...

  • Git常用命令备忘

    Git常用命令备忘 git config --global user.name "robbin" git conf...

  • 快速上手Git

    使用git 命令行时,经常会忘记相应的git命令,这次梳理最基本的git使用当做备忘,顺带帮助读者快速上手git。...

  • Git命令备忘

    1. Merge without checkouts The syntax of git fetch for (n...

  • Git命令备忘

    1. Merge without checkouts The syntax of git fetch for (n...

  • Git命令备忘

    Git文件的状态 已修改modified-文件被修改了,但是还没有提交保存。 已暂存staged-已修改的文件放在...

  • git 命令备忘

    记录个人 git 备忘,持续更新。 查看文件文件的提交记录 删除远程分支

  • Git 命令备忘

    创建新的git仓库 checkout repo 工作目录持有实际的文件暂存区(index)像个缓存区域。临时保存你...

  • git命令备忘

    在工作之余,做一些备忘是很重要的,之前在新浪博客真的是坑爹,吭哧吭哧几个小时的东西一不小心就全军覆没...2017...

网友评论

      本文标题:Git命令备忘

      本文链接:https://www.haomeiwen.com/subject/tvitwhtx.html