git 常用命令手记

创建

git branch 本地分支


修改

 git branch --set-upstream 本地  远程


创建并切换到本地分支 

git checkout -b  本地分支   远程分支

git checout  远程分支  -b 本地分支


切换到空分支 

git checkout  路径/分支名 如

git checkout public/master


将文件从已修改状态变为修改前状态

git checkout  path/文件名


该命令只能用本地库覆盖你的工作拷贝,并不能取得远端版本的更新.如果要从远端直接更新某一个文件,

正确的方法应该是先更新本地库(但不更新工作拷贝),然后用本地库来更新单个的工作拷贝文件.

如下:

git fetch

git checkout origin/master --  path/to/file



git pull 远程分支 或者 直接 git pull


查看状态

git status


git add 

git commit

git reset  远程分支

git reset HEAD <filename>  //将文件从已暂存状态恢复为已修改状态 


打patch 

git format-patch -1

git am xxx.path 


重新提交到其他分支

git cherry-pick -n hashcode //-n 重新提交

git commit

git push ...


删除分支

git branch -d 本地分支


查看配置

git config --list

 cat .repo/config 


本地:local

 远程:remote/master

git push remote  local:master


LOG 相关

git log -b 分支名

git log --grep "keyword"

git log --grep=PR0016000

git log --author=name

git log  路径

git show hashcode(file)

git log -p 显示path

git log --stat 显示改动的一个小结

git log --since="2012-2-23" --before="2012-2-25"//在这个时间内的修改


repo forall -pc git 命令  //在所有的目录执行这个git 命令 p path 



分支合并
     比如,如果要将开发中的分支(develop),合并到稳定分支(master),
     首先切换的master分支:git checkout master。
     然后执行合并操作:git merge develop。
     如果有冲突,会提示你,调用git status查看冲突文件。
     解决冲突,然后调用git add或git rm将解决后的文件暂存。
     所有冲突解决后,git commit 提交更改。
 分支衍合
     分支衍合和分支合并的差别在于,分支衍合不会保留合并的日志,不留痕迹,而 分支合并则会保留合并的日志。
     要将开发中的分支(develop),衍合到稳定分支(master)。
     首先切换的master分支:git checkout master。
     然后执行衍和操作:git rebase develop。
     如果有冲突,会提示你,调用git status查看冲突文件。
     解决冲突,然后调用git add或git rm将解决后的文件暂存。
     所有冲突解决后,git rebase --continue 提交更改。

你可能感兴趣的:(git 常用命令手记)