


























关于git rerere先卖个关子,在文章的最后会介绍这个命令,可能大多数人对git的认识停留在日常的pull、commit等,不信可以试着回答一下下面几个问题:
上面几个问题的答案请点击这里你们仍未掌握那天所学的 git 知识查看,而这篇你可以理解为一些平时不怎么用到但却很实用的git命令,希望我总结的这些能进一步加强你的git技能。
如果你还没用过git,可以在你的浏览器上输入try.github.io去探索git的世界。
敲git pull origin master 多了你可能就想看能不能少敲几个字符,和linux的alias一样,你可以对git命令设置简单的名字。
1git config --global alias.st status
当然你也可以在.gitconfig文件一起配置,例如我的.gitconfig中 alias配置:
1[alias] 2 ss = status 3 ct = commit 4 ck = checkout 5 bh = branch 6 pl = pull 7 ph = push 8 pom = pull origin master 9 pom3 = pull origin master3.0 10 df = diff 11 lg = log --graph --pretty=format:"%Cgreen(%h)%Creset-%d-%s by %C(yellow)%cN%Creset %cr" --abbrev-commit --date=relative 12 ckb = checkout -b
查看某个文件的修改历史
1git log --pretty=oneline #filename 2git show 136e847550bfbd68c65e0b4dd617ce05a3d0af70 // 查看提交改动
添加子项目代码
1git submodule add 仓库地址 路径
初始化下载子项目代码
1git submodule update --init --recursive
修改你的提交信息
给当前代码打上版本号;
这个非常实用,可以查看当前的标签,也可以给当前版本打上标签。
暂存你的改动
如果你有改动没有commit,当你checkout分支时,git会提示你先commit,这时可以使用stash暂存这些改动,然后使用git stash pop取出来。
当你有多个改动,可能得提交在多个commit中,这时可以使用git add -p 一个个添加。
当我们删除了远程分支,使用git branch -a 查看本地和远程的分支时,会发现有些分支在远程已经删除了,但在本地仍然可以看到这些已经删除的远程分支。 可以使用git remote show origin 来查看关于origin远程分支、本地分支的详细信息,提示你使用git remote prune origin来清理这些分支。
挑毛病利器
查找文件的每一处改动历史,显示提交commit号、作者、时间、改动等。
git log是查看git历史的常用命令,但是很多时候输出的信息并不是很直观(也可以尝试一下git shortlog),有时我们想看更多或更少的信息,这里可以使用format来定制你的log输出格式,简单点的可以这样
1git log --format=oneline --abbrev-commit
例如这是我的:
1git log --graph --pretty=format:"%Cgreen(%h)%Creset-%d-%s by %C(yellow)%cN%Creset %cr" --abbrev-commit --date=relative 2
具体可以参照这里.
帮助你解决冲突
1 2# 开启git rerere 3git config --global rerere.enabled true
rerere = reuse recorded resolution 它会让Git记住你是如何解决某个文件的两个版本之间的conflict,这样在下次Git遇到同样的文件在相同的两个版本间发生冲突时,可以自动帮你使用相同的方法解决冲突。 具体如何开启使用点击查看git rerere
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。