Git

Git常用操作

丢弃工作区修改

  git checkout -- file_name

撤销暂存区的修改

  git reset HEAD file_name

版本回退

  git reset --hard HEAD^  #退回上一版本
  git reset --hard [commit id]    #退回到[commit id]版本

查看提交历史

  git log

查看命令历史

  git reflog

删除文件

  rm -rf foo.txt

此时

  git status

会提示删除了文件,有两种情况,一种是确实要删除文件,则

  git rm foo.txt

即可。另一种是删错了,则

  git checkout -- foo.txt

git checkout其实就是用版本库里的版本替换工作 区的版本。

远程仓库

创建SSH-Key

  ssh-keygen -t rsa -C "your email@example.com"

添加SSH-Key

添加远程仓库

  git remote add origin git@github.com:alfredxinglkey/learngit.git        //添加后远程库的名字就是origin,这是git默认的叫法
  git remote add origin https://github.com/alfredxinglkey/learngit.git        //https除了速度慢,还有每次都需要输入口令

推送(push)

  git push -u origin master       //第一次推送需要加-u参数

克隆(clone)

  git clone git@githuc.com:alfredxinglkey/learngit.git

分支管理

创建分支

  git branch dev      //创建分支dev
  git checkout -b dev     //创建dev分支并切换到dev分支
  git branch      //列出所有分支

切换分支

  git checkout master     //切换到master分支

合并分支

  git merge dev       //合并dev分支到master分支

删除分支

  git branch -d dev       //删除dev分支

解决冲突

手动修改冲突文件后重新提交,然后再次合并。

分支管理策略

Fast forward模式下,删除分之后,会丢掉分钟自信息,需要手动强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样。从分支历史上就可以看出分钟自信息。

  git merge --no-ff -m "merge with no-ff" dev     //禁用fast-forward模式

 

posted @ 2018-12-07 17:51  OneNX  阅读(290)  评论(0编辑  收藏  举报