Git命令总结
1、基本命令
git branch:查看当前分支
git branch –a:查看所有分支
git branch 分支名称:新建新分支
git branch –d 分支名称:删除分支
git checkout 分支名称:切换分支
git checkout .
git clean –df 删除当前目录下没有被tracked的文件和目录
git reset –hard HEAD将本地的head指针指向上一个版本,重置暂存区的内容
git fetch 将远程主机的最新内容拉到本地,用户检查了以后决定是否合并到本机分支中
git pull 将远程主机上的最新内容拉下来直接合并,可能会产生冲突
git commit –amend 在不增加新的commit提交情况下,将新修改的代码追加到前一次commit中
git push origin head:refs/for/xxx
git blame 文件 查看代码是谁提交的
git log file 查看文件的修改提交记录
(1)git reset(回退)
git reset --hard:工作区、暂存区、本地仓库所有新增都丢失,彻底回退到某个版本
git reset --mixed:暂存区和本地仓库丢失,可以通过add提交到暂存区
git reset --soft:本地仓库新增丢失,可以继续commit提交
2、冲突解决
(1)git stash
Git stash
Git pull
Git stash pop
(2)放弃本地修改
git log:查看提交记录
git reset --hard commit id
git reset - -hard HEAD ^^^^ //回退到之前的几个版本
git pull //再拉取最新的
(3)撤销分支
Git reset –soft HEAD^
3、干净切换分支
在切换分支时,如果在当前分支有文件修改,会将修改的文件信息带到新分支上。
(1)方式一
git checkout xxx
git reset --hard head
ps:原分支上修改也无了
(2)方式二
git stash
git checkout xxx
ps:修改还需要
(3)方式三
git add .
git commit –m
git checkout xxx
4、git stash
功能:保持当前工作进度,不会把暂存和工作区的改动保存到一个未完结变更的堆栈中。
git stash
git status 查看工作区已经干净
git stash pop 恢复最新的进度到工作区
5、git blame
git blame用于追特定文件中的每一行是由哪位开发者在什么时候修改的
git blame filename –L linenumber