版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Chris_zhangrx/article/details/85717186
本文只是一个学习的记录,后期会不定期的更新
设置提交用户名及提交邮箱
git config --global user.name "chris zhang"
git config --global user.email "[email protected]"
初始化一个本地仓库
git init
新建一个文件
touch filename
查看当前文件状态, modified / unmodified or nothing (staged)
git status
及 git status -s
添加当前路径下的所有文件
git add .
添加当前路径下的单个文件
git add filename
查看修改日志
git log
日志单行显示
git log --oneline
以图的形式表示,适用于多分支情况
git log --oneline --graph
提交
git commit -m "commit" # 提交,文件 staged
在当前提交历史中重新提交
git commit --amend --no-edit
直接 add + Commit
git commit -am "commit"
查看即修改内容,比较工作区与暂存区
git diff or
查看即修改内容,比较暂存区与最新本地版本库
git diff --cached
查看即修改内容,比较工作区与最新本地版本库
git diff HEAD
查看所有提交历史的 HEAD ID
git reflog
所有文件都修改
git reset filename
git reset --hard HEAD(^/~1) # ^ 或者 ~1 都是表示向前一个版本,^^或者~2表示向前两个版本,以此类推
git reset --hard HEAD-ID # 直接跳转
git reset --hard HEAD@{1} # 等同于直接跳转,可以配合 reflog 来使用
只修改某一个文件
git checkout HEAD-ID -- filename (然后 git add + git commit )
创建分支
git checkout -b branchname
git branch branchname
查看当前分支
git branch
分支之间切换
git checkout branchname(要是已有分支的name)
删除分支
git branch branchname -d
分支之间合并
git merge --no-ff -m "commit" branchname # 这里不是 fast-forward 的合并形式,并添加评论
git merge branchname # ff,即 fast-forward 形式的
保存目前的进程
git stash
取回之前保存的进程
git stash pop