代码提交流程
工作区->缓存区->版本库
工作区:我们本地的代码
stage:缓存区。
master:版本库默认分支
HEAD:指针
git add readme.txt 添加文件,工作区 -> 缓存区
git commit -m "说明", 缓存区 -> 版本库
git status 查看状态
git diff HEAD -- readme.txt 工作区和版本库中最新代码的区别
git log 查看日志
git log --pretty=oneline 查看日志,一行显示
git reset --hard f72c 回滚指定版本, f72c 为版本号的前几位
git reflog 操作记录,包括回滚的记录
git checkout -- readme.txt 还原
git reset HEAD readme.txt 清空缓存区
git rm readme.txt 删除 并且提交 git commit -m "说明"
git rm -r --cached . 清空缓存区
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>
,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
github远程库,创建库learngit
git remote add origin git@https://github.com/用户账号/learngit.git;关联一个远程库
git push -u origin master 第一次推送master分支的所有内容;
git push origin master 推送最新修改;
从远程下载代码
git clone git@github.com:用户账号/learngit.git 克隆远程项目
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>