git reflog show HEAD@{now} -10:查看所有操作log
git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容
git reset--soft HEAD^:一般用来重新commit
git add <path> :add to index only files created or modified and not those deleted
git add -u : add to index only files modified or deleted and not those created
git add -u [<path>]: 把<path>中所有tracked文件中被修改过或已删除文件的信息添加到索引库。它不会处理untracted的文件。
省略<path>表示.,即当前目录。
git add -A: [<path>]表示把<path>中所有tracked文件中被修改过或已删除文件和所有untracted的文件信息添加到索引库。
省略<path>表示.,即当前目录。
git add -i:我们可以通过git add -i [<path>]命令查看<path>中被所有修改过或已删除文件但没有提交的文件,
并通过其revert子命令可以查看<path>中所有untracted的文件,同时进入一个子命令系统。
git branch:查看当前处于哪一个分支,加入没有处于任何分支,但已经修改内容,则,git log查看当前版本号,例如a718fa2。接着git branch tempa718fa2,为当前修改建立一个名为 temp 的分支,接着,git merge 就ok了。
git merge:合并两个分支,比如分支A,B。git checkout A,进入A分支。git merge B,将B的内容合并到分支A。假如分支合并出现冲突。则合并后用gitdiff查看哪里有冲突。然后进入那个文件,找到分支冲突的地方,有冲突标示的,如++<<<<<<< .merge_file_jjNuQ4 +<<<<<<< HEAD。然后修改,修改时也需要删除冲突标示。最后git add,git commit就OK了。