git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
git describe当前的版本信息
git checkout
git checkout -f
git branch
git branch -a 列出所有分支,包括remote 和 local branches
git branch -r 列出remote branches
git checkout jike 从当前分支(一般是master),checkout并切换到jike分支
git show HEAD 第一个commit
git show ORIG_HEAD 跟第一个一样
git var -l 列出git变量
git tag 出当前已有的tags
git pull 相当于svn up
git diff /*列出自己本地的tree中已修改、但却未commit的改动,
这也是产生patch的方式(用来提交的patch需要先commit到自己的tree里,
然后git-format-patch)。 注意,使用git-diff产生的patch都应该在
patch(1)时指定-p1,或者直接使用git-apply打补丁
*/
git apply 相当于patch(1)命令,不过git-apply专门用来apply那些用git-diff生成的补丁
git rev-list -2 805a6af8dba5dfdd35ec35dc52ec0122400b2610 列出指定commit开始的两个commit
git whatchanged -p security/Kconfig 查看某一文件都被哪些补丁改动过
git blame 查看某一文件的每一行的作者和Revision ID
git reset HEAD~1 撤销最近的commit,HEAD~1这种方式也可以表示为HEAD^,HEAD~n
git diff |git-apply -R -v
git reset --hard bce7f793daec3e65ec5c5705d2457b81fe7b5725
--hard不但会reset你的working tree,而且联index files一起reset:整个回到你指定的commit状态。
git revert adb2f08089edac8bf1912a618a74485ab42f2b86 指定导致删除操作的commit ID,进行撤消
git log -1 -p 721151d004dcf01a71b12bb6b893f9160284cf6e 列出某一个commit ID对应的补丁 -1可换成-n
git format-patch --stdout -1 721151d004dcf01a71b12bb6b893f9160284cf6e
--stdout指定git写到标准输出,否则会写入到磁盘中
git bisect二分查找法
git archive 把某个版本的export出来
git grep "limiting output to"
git mailinfo msg patch < /path/to/your/filename.eml
git log --author=
可以查找某一个作者所有的提交git log --grep='dtor' mm/slab.c 这样就可以查看 mm/slab.c文件的修改log中,有字符 dtor 的部分
git blame -L 236,+5 arch/powerpc/Kconfig 用git blame -L xxx.c 多少行,+多少行以下几行(如+5)
git diff-tree -p 172ae2e7 > xx.diff
git format-patch -1 172ae2e7 生成patch