git 常用命令 add commit checkout reset

git init 创建一个仓库

 

git add filename 缓存到stage/index

将workspace中的文件缓存到stage/index中

 git commit filename

将stage/index中的修改提交到respos中,若add之后file又有新的更改git也不处理,因为最新的修改没有add到stage/index中

 

 git checkout -- filename 丢弃当前工作区的修改

首先尝试从stage中拉取文件到workspace,若stage中没有缓存则从respotile中拉取

 

git reset HEAD filename  -- 丢弃当前缓存区的缓存

将stage/index中的修改回退到workspace(相当于撤销stage中的修改)

 

git history 查看提交的历史记录

 

git reset --hard HEAD^  将repository中的版本往前退一个版本,并将回退的文件覆盖到stage/index,workspace中

git reset --hard HEAD^^ HEAD~5  往前退2个或5个版本

git reset --hard verid(完整或唯一前缀都行) 切换到指定的版本

git reset --soft HEAD^ 仅将repository中的版本往前退一个版本,stage/index和workspace中的不变

git reset --mixed(default)将repository,stage/index回滚到某个版本,workspace中不变

 

git rm file 删除缓冲区stage/index中的文件

  如果需要后悔则git checkout,从repository中更新到stage和workspace中,如果真要删除则git commit

 

 

git remote -v 查看当前repository 关联的远程的repository的信息

git remote show origian 查看远程的某个版本信息

 

将本地的repository关联到远程的repository,并给远程的repository去个别名?(origin)

这里的https://github.....的htt开头可能根据不用的remote的要求而改变

git remote add origin https://github.com/shankusu2017/learngit.git

git remote add origin [email protected]:shankusu2017/learngit.git

删除关联

git remote remove origin

往远程的repository推送(后续可能需要要求输入username,pwd)

git push -u origin master

 

分支类

git branch 查看当前所有分支和当前正在工作的分支

git branch dev 创建分支

git checkout dev 跳转到dev分支

git checkout master 跳转到master分支

git merge dev 将dev合并到master上(合并到当前工作分支上)

git branch -d dev 删除分支dev

git switch -c dev 创建dev分支并跳转到dev分支   git switch dev跳转到dev分支

git merge --no-ff -m "merge with no-ff" dev 将dev分支合并到当前工作分支上(not faster forward模式,保留dev分支的信息)

 

现场类

git stash 将当前的stage/index现场藏匿起来 workspace中untracking的文件无法处理

git stash list 查看当前临时藏匿的所有的stage/index的信息

git stash pop 弹出上一个存的stage/index内容,并保留副本

git stash clean 清空当前保存的所有藏匿的副本

git stash drop stash@{$num}:丢弃stash@{$num}存储,从列表中删除这个存储 num通过git stash list查看

 

 

你可能感兴趣的:(git)