返回首页
   
   
   知识点
   文件状态
    
   
   
   知识点
   整体架构逻辑
    
    
   
   
   GitBash高速
   获取远程库命令
   git clone [address]
    
   获取成功后 会有git隐藏文件夹
    
   
   
   GitBash高速
   从工作区把所有代码加到暂存区
   git add .(添加全部文件) git add (添加单独文件)
    
   修改文件后,再添加到暂存区
    
   
   
   GitBash高速
   从暂存区把代码提交到本地仓库
   git commit -m 'commit msg'
    
   如果msg中有需要换行的信息,可以灵活使用引号,类似这样
   git commit -m " 这是第一行信息
   这是第二行信息 "
   也可以由工作区直接提交到本地仓库,使用git commit -m 'msg' -a
     
   
   
   GitBash高速
   从本地仓库把代码提交到远程库
   git push
   第一次提交时如果没有输入用户名和邮箱,是需要输入的
     
	 
   
   
    GitBash高速
   如本地仓库直接覆盖远程仓库
   git push -f 如果本地版本落后于remote 一般push不了 但使用-f参数可以强行覆盖远端版本
   
   
   GitBash高速
   查看本地工作区状态
   git status
   提交到本地后查看状态时,会提示领先远端代码一个提交
    
   
   
   GitBash高速
   查看本地仓库已提交但未push的代码
   git cherry -v
    
   
   
   GitBash高速
   合并本地仓库分支版本
   git merge [branchname]
    
   
   
   GitBash高速
   回退工作区代码为原始状态
   git checkout --[filenam]
     
   
   
   GitBash高速
   比较工作区和暂存区代码差异
   git diff
     
   
   
   GitBash高速
   比较暂存区和本地仓库代码差异
   git diff --staged
     
   
   
   GitBash高速
   创建本地分支并停留在当前分支
   git branch [branchname]
     
   
   
   GitBash高速
   创建本地分支并切换到创建分支
   git checkout -b [branchname][template]
     
   
   
   GitBash高速
   删除远端分支
   git push origin --delete [branchname]
     
   
   
   GitBash高速
   切换本地分支/本地分支没有则直接拉取远端分支
   git checkout [branchname]
     
     
   
   
   GitBash高速
   删除本地分支(首先要切换到其他分支)
   git branch -d [branchname]
     
   
   
    GitBash高速
   查看本地所有分支/远程所有分支/本地远程所有分支
   git branch/git branch -r/git branch -a
     
   
   
    GitBash高速
   查看本地分支和远程分支对应关系,远程分支可映射到本地为多个不同名称
   git branch -vv
     
   
   
   GitBash高速
   本地有分支,远端无分支,push操作
   git push -u origin [branchname]
     
   
   
   GitBash高速
   git log使用的几种方式
    
    
	  
	   
   
   
   GitBash高速
   查看画线的log日志命令
   git log --oneline --decorate --graph --all
   
   
   GitBash高速
   查看远程仓库地址
   git remote -v
    
   
   
    GitBash高速
   从本地仓库回退到上一版本(默认mixed 直接回退到工作区,暂存区没有)
   git reset head^
    
   
   
      GitBash高速
   从本地仓库回退到上一版本(回退到暂存区,工作区)
   git reset head^ --soft
    
   
   
   GitBash高速
   reset 指定回退到的版本
   git reset commitId
    
   
   
   GitBash高速
   reset 暂存区回退到工作区
   git reset head
    
   
   
   GitBash高速
   reset 工作区回退到未修改状态
   git reset head --hard 
    
   
   
   GitBash高速
   restore 暂存区回退到工作区(都是针对文件修改)
   git restore --staged [filename] 
    
   
   
   GitBash高速
   reset 工作区回退到未修改状态(都是针对文件修改)
   git reset [filename]  
    
   
   
   GitBash高速
   revert 撤销某次提交commitId/head
   撤销某一次提交的版本 如提交了 1,2,3 想撤销2  恢复为1,3 会产生新的提交
   git revert head^  
    
   
   
   GitBash高速
   rm 撤销某文件的版本关联
   git rm --cached [filename]
    
   
   
   GitBash高速
   保存当前未提交的代码到git缓存,并回退到某一历史版本
   场景分析:有三次提交1,2,3当前线上是版本3,但发现版本3有错误,版本2为正确的
   但本地又有修改未提交,想把当前修改保存起来并回退到版本2.
   git stash [save msg]
   git stash list
    
   
   
   GitBash高速
   取出stash中的数据(可多次)
   git stash apply
    
   
   
   GitBash高速
   界面处于非编辑状态时如何退出
   :q 回车或q
    
    
   
   
   GitBash高速
   创建Ignore忽略部分文件提交,若已经纳入版本库,则需要取消文件关联
    
   
   
   GitBash高速
   获取远程库信息
   git fetch
   
   
   
   GitBash高速
   直接拉取远程库信息到本地库(相当于fetch+merge)
   git pull
   
   
   GitBash高速
   本地创建仓库(会有隐藏的.git文件夹)
   git init
   
   
   GitBash高速
   获取命令帮助信息
   git restore -help   在终端内查看
   git restore --help 直接弹出网页
   
   
   GitBash高速
   设置全局用户名
   git config --global user.name 'user'
   
   
   GitBash高速
   设置全局邮箱
   git config --global user.email 'user@email.com'
   
   
   GitBash高速
   查看本地全局配置(一般为用户名和邮件)
   git config --global -l
   
   
  
   
   GitBash高速
   对有分支的先合并其他分支到本次提交前
   git rebase [branchname]
   git rebase --continue [直到合并完成]
   
   
   
   GitBash高速
   查看所有操作日志
   git reflog
   
   
    知识点
   可以给命令起别名
   
   [alias]
   ad= add .
   cmm=commit -m
   lg=log
   co=checkout
   cob=checkout -b