首页 > IT职业 > > 高频使用的 Git 命令
作者:CRPER
juejin.im/post/5de8d849e51d455808332166
汇总下我在项目中高频使用的git命令及姿势。
不是入门文档,官方文档肯定比我全面,这里是结合实际业务场景输出。
使用的 Git版本:git version 2.24.0
# 输出概要日志,这条命令等同于
# git log --pretty=oneline --abbrev-commit
git log --oneline
# 指定最近几个提交可以带上 - + 数字
git log --oneline -5
# 提供类似 GUI 工具的 log 展示
git log --graph --date=relative --pretty=tformat:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%an %ad)%Creset'查看日志,常规操作,必备

查看工作区状态的东东,不如GUI直观,但是命令行也有一些用的
git status
git status -s
git status --show-stash
git checkout用来切换到对应记录的,可以基于分支,提交,标签。
切提交和标签一般用来热修复或者老版本需要加新特性。
git checkout dev
git checkout origin/test
git checkout --track origin/feature-test
git checkout -b testbranch
git checkout -- file
git checkout .
git checkout -天天打交道的命令,这里说一些很常见的姿势
git commit --amend --no-edit
git commit --no-verify -m "xxx"
git commit -m "xxx"
git commit -t templateFile
git commit -F不得不说,代码回滚中这个命令也是用的很多,而且是 --hard
git reset --hard commit_sha1
git reset --soft commit_sha1
git reset --soft HEAD~1
git reset --mixed commit_sha1
git reset --merge commit_sha1
git reset --keep commit_sha1一般用于master 的代码回滚,因为多人在上面协作,
revert 可以平稳的回滚代码,但却保留提交记录,不会让协作的人各种冲突
git revert commit-sha1变基在项目中算是很频繁的,为什么这么说。
比如你开发一个新的 feature, 遵循最小化代码提交的理念。
在整个功能开发完毕的时侯,会有非常多的 commit,用 rebase 可以让我们的commit记录很干净
git rebase -i git-sha1|branch(HEAD)
git rebase --continue
git rebase --skip
git rebase --abort
git merge --no-ff branchName
git pull中用的最多是带--rebase(-r)的方式(变基形式拉取合并代码),保持分支一条线。pull会走ff模式,多数情况会产生新的commit,部分参数与 merge提供一致。git push origin localbranch
git push -d origin branchName
git push --tags
git push --follow-tags
git push -f origin branchName
git push --force-with-leasegit remote add origin url
git remote add github url
git remote set-url origin(或者其他上游域) urlgit branch -d branchName
git branch -M oldBranch newNameBranch
git branch --set-upstream-to=origin/xxx
git branch --set-upstream-to origin xxxstash 添加描述信息!!!git stash save stashName
git stash -u save stashName
git stash push -m "更改了 xx"
git stash apply stash@{0}
git stash pop stash@{0}
git stash list
git stash clear
git stash drop stash@{0}
git stash show stash@{0}rebase,merge, reset 这些git reflog -5--continuegit cherry-pick commit-sha1
git cherry-pick master~4 master~2
git cherry-pick startGitSha1..endGitSha1git rm --cache -- file
git rm -r --cached .
git add .
git commit -m "xxx"git rev-parse --short HEAD --verify
git rev-parse --show-toplevel
git rev-parse --git-dir
git rev-parse --all
你点的每个在看,我都认真当成了喜欢。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69975286/viewspace-3120783/ ,如需转载,请注明出处,否则将追究法律责任。