@Pollux
2017-03-09T12:34:19.000000Z
字数 1185
阅读 594
git
mkdir learngit //创建空目录
cd learngit //进入目录
pwd //显示当前目录路径
git init //创建本地仓库
ls -ah //显示隐藏的.git文件夹
git add readme.txt //把文件添加到缓存区
git commit -m "wrote a readme file" //把缓存区所有文件提交到当前分支
git status //时刻掌握仓库当前的状态
git diff readme.txt //在add之前查看作了什么修改,与对应add了的文件做比较
git log [--pretty=oneline] //查看历史提交记录
// HEAD 指向当前分支,不严格来讲,是指向当前版本,HEAD^ 指向上一个版本,HEAD^指向上上个版本,HEAD~100 指向上100个版本
git reset --hard HEAD^ //回退到上一个版本,此时工作区就是回退后的版本
git reset --hard [c001105] //回退到指定的版本
git reflog //查看之前做过的命令
cat readme.txt //查看工作区文件内容
git checkout -- readme.txt //撤销最近一次修改,既可以是工作区的修改.有两种情况,一种是自修改后还没有被放到暂存区;另一种是已经添加到缓存区又作了修改;这种撤销是相对对于工作区的修改而言的
git reset HEAD readme.txt //把暂存区的修改回退到工作区
git remote add origin [HTTPS/SSH] //通过HTTPS 或 SSH的方式关联远程仓库
git push [-u] origin master //推送
git branch //查看当前分支
git branch dev //创建dev分支
git checkout dev //切换到dev分支
git checkout -b dev //创建并切换到dev分支
git merge dev //把dev分支合并到当前分支
//从master继承过来的文件,在这些文件上面做的修改,合并的时候会覆盖被合并分支上的文件
git branch -d dev //删除dev分支
rm readme.txt //删除工作区文件,修改后记得add
git merge --no-ff -m "merge with no-ff" dev //禁用fast forward合并
//这样在删除了dev分支之后还保留着分支信息
git clone [HTTPS/SSH] //克隆仓库到本地,只含有主分支
git pull //拉取当前分支上最新的提交
git remote [-v] //查看远程仓库信息
git branch dev origin/dev //创建远程dev分支到本地
git branch --set-upstream dev origin/dev //创建本地分支和远程分支的链接关系
ssh-keygen -t rsa -C "youremail@example.com" //生成密钥