将文件添加缓存
git add <filename>
提交文件
git commit -m "提交这次说明"
查看距上次提交版本 所修改变动的文件列表,告诉我们哪些文件被修改,此时还没有做提交的修改。
git status
查看修改的文件 diff:difference
git diff
查看历史提交各版本
git log
查看历史提交各版本,信息简化
git log --pretty=online
HEAD :指当前版本 HEAD^: 上一个版本 Head^^: 上上一个版本
####回退到上一个版本
git reset --hard HEAD^
回退到指定版本号
git reset --hard 版本号
####查看记录每一次命令
git reflog
git checkout -- <filename>
① 文件修改后还没有被放到缓存区,撤销修改回到版本库一模一样的状态
②文件修改后已经提交到缓存区,又做了修改,撤销回到添加到缓存区之后的状态
③就是回到最近一次的git commit 或者 git add的状态
git checkout是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以还原
git reset HEAD <filename>
将已经添加到缓存区的文件回退到工作区,HEAD表示最新版本
删除文件,删除完需要commit。
git rm <filename>
git关联代码仓库
git remote add origin git@server-name:path/repo-name.git
第一次推送到代码仓库中
git push -u origin master
创建分支并切换
git checkout -b <分支名>
切换分支
git checkout <分支名>
查看当前分支 当前分支前面有*号
git branch
创建分支
git branch <分支名>
将分支合并到现在的分支
git merge <分支名>
删除分支
git branch -d <分支名>
查看分支合并图
git log --graph
--no-ff 合并分支有历史记录,ff没有历史记录
git merge --no-ff -m "" dev
创建备份区
git stash
####git stash apply恢复 git stash drop来删除 或者 git stash pop 会删除
查看远程库信息
git remote -v
git push origin <branch-name>
推送到版本管理库
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交
没有冲突或者解决掉冲突后,再用git push origin <branch-name>推送就能成功
如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,
用命令git branch --set-upstream-to <branch-name> origin/<branch-name>