git 小结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git 小结相关的知识,希望对你有一定的参考价值。
使用git以来一些不清楚的地方,再重读Pro Git的时候记录下来。
Pro Git 第二章 git 基础
git diff 比较的是工作区(git的目录)和暂存区(git add之后的文件)之间的差别,因此某文件在add到暂存区之前,git diff一下看看改了什么是比较稳妥的。
git diff --cached 或者 git diff --staged 比较git暂存区和上次commit之后的仓库的差别,也就是add之后但还没有commit的文件。
git commit,我一向喜欢用commit -m,其实只要用git commit就可以了,会启动文本编辑器说明本次提交内容
跳过暂存区直接提交 用git commit -a,看一下官方的解释,暂存区已有的文件,再次被修改或删除,用了-a,不需要add,直接提交到仓库。
-a, --all Tell the command to automatically stage files that have been modified and deleted, but new files you have not told git about are not affected.
删除文件
git rm 从暂存区删除,工作区也会随带删除,可以使用 -f --force选项,另一种情况,只在仓库删除,工作区保留,用git rm --cached,对一些误进入仓库的文件如*.swp *.pyc比较有用
git log -p 可以查看代码差异,类似于tig,git log -2查看最近2次提交; git log --stat, git log --pretty
git commit --amend ,修改上一次提交,如提交说明写的不对,或者工作区的某些内容没有暂存,可以暂存后再次提交,但git log只会显示一次提交记录
远程仓库相关
git remote add name url 把远程仓库url 添加为name
git remote rm name 删除远程仓库name
git remote -v 显示远程的信息 --verbose
git remote show
git remote rename a b 把远程仓库a重命名为b
fetch 只是将远程仓库的所有分支拉到本地,并不自动合并到当前分支
打标签,上线的时候经常会使用,我看书的时候没注意,这次重点看下
我们上线一般用的是轻量级tag,git tag <tag_name>,打完tag,git push 不会把tag推送到远程分支,需要用 git push origin <tag_name>来推送。
以上是关于git 小结的主要内容,如果未能解决你的问题,请参考以下文章