git常用指令解析

277 阅读2分钟
touch demo.js

创建一个demo.js文件

clear 

清空控制台信息

git clone git-URL

从远程仓库克隆项目到本地

git checkout -b feature origin/master

git checkout -b “要检出的远程分支在本地的名称” origin/“远程分支名称”

git checkout master

本地切换到master分支,重置工作区,暂存区

git checkout commitID  

将当前分支head 指向指定commitID,该commitID的文件会覆盖工作区,暂存区

git checkout -- readme.txt / git checkout .

丢弃只有工作区的某个文件修改 / 丢弃工作区所有文件修改

git checkout HEAD . 或者 git checkout HEAD --file 

将最近一次commit的某个文件覆盖到工作区和暂存区,会丢弃工作区,暂存区某个文件修改

git diff  

比较本地变动,(工作区和暂存区)与上次提交之间

git diff commitID1 commitID2  

对比 commitID2 - commitID1 之间的变动 commitID2时间要比commitID1后

git diff --cached     

对比最近提交与暂存区之间的区别

git diff HEAD     

对比最近提交与(暂存区+工作区)之间的区别

git diff commitID     

对比指定commitID与(暂存区+工作区)之间的区别

git commit -m 

以"备注" 提交代码

git coomit --amend -m 'message'

修改最近一次的提交记录

git branch / git branch -a 

查看当前分支 / 查看所有分支,包括远程分支

git branch -d dev  /  git branch -D dev

删除dev分支 / 强制删除未合并的分支

git push origin --delete branchName   

删除远程分支

git branch -vv     

查看当前分支的拉取源(pull origin)

git pull origin dev

拉取远程分支代码

git reset HEAD~ 

回滚到上一次提交,并将上次的提交文件重置到工作区 git reset 详解

git reset HEAD readme.txt  

将暂存区的某个文件回退到工作区

git reset fileName   

将暂存区回滚到工作区

git reset --soft  commitID  

将这个commitID前的提交重置到暂存区

git reset --mixed  commitID  

将这个commitID前的提交重置到工作区

git reset --hard  commitID  

重置分支到这个commitID,并且丢弃(工作区,暂存区)上面所有修改

git revert commitID

会把指定commitID的提交的所有修改回滚,并同时生成一个新的提交 ,反造。
git revert 详解以及产生的问题

git add 

“文件名称” 添加工作区代码到暂存区

git commit -m 

"备注" 提交代码

git status 

查看工作区状态

git push origin dev  

推送远程dev分支,没有则自动创建

git merge dev       

合并dev分支代码到当前分支

git rebase master   

将当前分支以master进行变基,可以使代码合并进master后呈一条直线 git rebase 详解

git stash   

缓存工作区

git stash list  

查看被缓存的工作区列表

git stash pop   

恢复缓存的工作到工作区,清空缓存的内容

git cherry-pick commitID  

把某个commitID的提交复制到当前分支