https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
感谢廖老师。
注册账号 zhjcezh
下载git:https://git-scm.com/downloads
mkdir learngit //创建文件夹
cd learngit //跳转文件
pwd //显示目录
git init //将目录变为给git仓库
git add readme.txt //添加文件
git commit -m "wrote a readme file" //将文件提交到仓库
git log //命令显示从最近到最远的提交日志
git log --pretty=oneline //查看简单日志
git reset --hard 1094a //回到1094a版本
cat readme.txt //查看文档内容
工作区(Working Directory)就是你在电脑里能看到的目录
版本库(Repository)工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
暂存区 就是add提交的修改在的地方
git status //查看状态
$ git checkout -- readme.txt
//命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
rm test.txt //删除文件
git checkout -- test.txt //其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
git remote add origin git@github.com:zhjcezh/learngit.git //添加到github远程仓库
git push origin master //把本地master分支的最新修改推送至GitHub
git clone git@github.com:michaelliao/gitskills.git //克隆一个本地库
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
git merge --no-ff -m "merge with no-ff" dev //禁用Fast forward
git stash //隐藏现有工作
转到工作分支
git stash pop //恢复
修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。
git branch -D feature-vulcan //强行删除分支