一些你可能不知道的 git 命令

git add

只将所有更新的文件加入暂存区

git add -u

git branch

查看分支并带上最新的 commit

git branch -v
一些你可能不知道的 git 命令

查看本地的所有分支(包含origin)

git branch -av
一些你可能不知道的 git 命令

批量删除分支

git branch | grep '$模糊匹配的分支名' | xargs git branch -d
一些你可能不知道的 git 命令

git checkout

创建分支

git checkout -b $新分支名

从某个tag上新建分支

git checkout -b $newBranchName $commitVersion

从其它分支上创建分支

git checkout -b $newBranchName branchName

git diff

对比当前 HEAD 和父级的 HEAD

// 其中的1代表父级,如果是父父级,值就就成 2 就行了
git diff HEAD HEAD~1

等同于

一些你可能不知道的 git 命令

不同分支指定文件的差异

git diff $branchName1 $branchName2 $fileName
一些你可能不知道的 git 命令

git pull

这个命令将 git fetchgit merge 合并成一个

假如当前分支是 develop, 当执行:

git pull origin master

它等同于

git fetch origin master
+
git merge master

git commit

修改最新的 commit 信息

git commit --amend

需要注意,如果当前分支已经执行过 git push 命令。再执行 push 执行时,需要带上 -f 参数,强制推上去。

git push -f origin $currentBranchName

git stash

将修改的内容暂存起来

git stash

查看暂存列表

git stash list

将暂存的信息重新打开

git stash apply (stash 堆栈的信息还在)



git stash pop

git rebase

合并多个 commit

git rebase -i $parentVersion

保留第一个 pick,其它的开头更改为 squash(可以简写为 s

一些你可能不知道的 git 命令

添加一个新的 message 信息。之前的 commit message 仍然保留(也可以不保留)。

一些你可能不知道的 git 命令

合并几个间隔的 commit

git rebase -i $parentVersion

保留第一个,将其它的 commit 移动过来。并修改头部为 squash(可以简写为 s

一些你可能不知道的 git 命令

如果返回的内容有报错。执行 git rebase --continue 后,会进入类似 git commit --amend 界面。修改 commit 信息。

注意:如果要修改的信息本来就是最初的 commit,需要手动在最上面加上一个 pick $version 信息。

git log

查看简洁日志

一行展示日志信息,不展示时间,作者等信息。

git log --oneline

查看某个作者提交的日志

git log --author $authorName

根据提交信息查看日志

git log --grep $提交信息

查看某一个时间段的日志

git log --since=2021-11-17 --before=2021-11-18

git reset

让所有暂存区恢复和 HEAD 一样

git reset HEAD
git reset --hard

如果合并分支时,有冲突,但又着急需要继续开发,这个命令非常适用。

部分暂存区的文件恢复成 HEAD 一样

git reset HEAD $fileName

消除最近的几次提交记录

git reset --hard $parentVersion

等同于

git reset $parentVersion
+
git checkout .

git cherry-pick

将其它分支的 某次提交记录的 内容合并到当前分支

git cherry-pick $commitVersion

gitk

图形化查看日志,可以看每次的提交的具体信息,以及分支的树形结构。

一些你可能不知道的 git 命令

注意

某些操作会直接影响代码以及分支树,在不熟悉之前,建议先拉一个 test 分支。在 test 分支上多尝试一下。明确知道每个命令执行后会有哪些影响,再在实际操作中使用更好。

总结

每一个命令都有自己的适用场景,恰当使用,可以很好地提高协作效率。

此文只简单总结了个人认为比较实用的命令,如果小伙伴们有好的推荐,欢迎与我探讨交流。v


原文始发于微信公众号(前端学习总结):一些你可能不知道的 git 命令

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/83114.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!