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 小结的主要内容,如果未能解决你的问题,请参考以下文章

Pro Git(中文版)

git分布式详解

Git的使用

git 小结1

Git: git rebase 用法小结 (转)

git命令小结