美文网首页
git常用指令

git常用指令

作者: silasjs | 来源:发表于2019-12-22 20:31 被阅读0次

git常用指令

  • 基础概念
    • 📂(.git所在的文件路径)
      • 工作区(和.git在同一个目录下的文件夹/文件)
      • .git:版本库
        • stage(暂存区:git之所以比其他的版本管理优秀就在于它管理的是修改(暂存区),而不是文件)
        • master(git默认创建的主分支)
        • HEAD(指向当前分支的指针)
  • git init:创建版本库,初始化
  • git add:把文件添加到暂存区,用于之后提交到本地仓库
    • git add .:添加所有的修改到暂存区
    • git add <fileName>:添加某个文件的修改到暂存区
    • git add <fileName1> <fileName2>
  • git commit:把暂存区的修改提交到当前分支
    • git commit -m "修改信息"
    • git commit <fileName> -m "修改信息"
  • git status:查看当前状态
  • git diff:对比当前做了哪些改动
    • git diff HEAD -- <fileName>:查看工作区和版本库中最新版本的区别
  • git log:查看提交日志(从近到远)
    • git log --pretty-oneline:日志格式为一行,方便阅读
    • git reflog:查看你操作的每一次命令
    • git log --graph:查看分支合并图
  • git reset:回退
    • HEAD:是指向当前分支的指针
    • git reset --hard HEAD^:回退到上一个版本(^符号的数量代表向上回退的版本数量)
    • git reset --hard HEAD~100:向后回退100个版本
    • git reset --hard 版本号:回退到某一个版本(版本号为commitID哈希值的前7位)
    • git checkout -- <fileName>:工作区内容回退到最近一次git addgit commit的状态,就是撤销之前的修改。
      1. 如果是修改后还未add到暂存区,就回退到和版本库一模一样的状态。
      2. 如果是已经add到暂存区后又做了修改,就回退到添加暂存区后的状态。
    • git reset HEAD <fileName>:把暂存区的修改撤销掉,重新放回工作区。
  • git rm <fileName>:删除文件
  • git push:把当前分支推送到远程仓库
    • git push -u origin master:第一次使用加上-u
    • git push origin <local_branch_name>:推送分支(origin为远程库的分支名)
  • git pull:抓取远程库的分支
  • git clone:克隆
  • 创建并切换分支
    • git checkout -b <branchName>:创建并切换到branchName分支上(旧版本写法)。相当于以下两句:
      • git branch <branchName>:创建分支
      • git checkout <branchName>:切换分支
    • git switch -c <branchName>:创建并切换到branchName分支上(新版本写法)。相当于以下两句:
      • git branch <branchName>:创建分支
      • git switch <branchName>:切换分支
    • git checkout -b <local_branch> origin/<remote_branch>:创建远程库的分支(remote_branch)到本地(local_branch),本地分支名最好和远程分支名一致。
    • git branch --set-upstream-to=origin/<remote_branch> <local_branch>:指定本地分支(local_branch)和远程分支(remote_branch)的链接。
  • git branch:查看当前分支
  • 合并分支
    • git merge <branchName>:合并指定分支到当前分支上,如果可能,会使用Fast Forward模式
    • git merge --no-ff <branchName> -m "merge_dec_info":强制禁用Fast Forward模式
  • 删除分支
    • git branch -d <branchName>:删除分支
    • git branch -D <branchName>:强行删除分支
  • git stash:藏匿当前修改
  • git stash list:查看藏匿
  • git stash pop:恢复并删除stash,相当于以下两步:
    • git stash apply:恢复stash
    • git stash drop:删除stash
  • git cherry-pick <commint_id>:把某次提交的修改内容,在当前分支重复操作提交一次。
  • git remote:查看远程库
    • git remote -v:远程库抓取和推送的地址
    • git remote add origin 远程仓库地址:本地仓库关联一个叫origin的远程仓库。
    • git remote rm origin:删除远程库
  • git tag:查看标签
    • git tag <tag_name>:打标签
    • git tag <tag_name> <commit_id>:给某次commit打上标签
    • git show <tag_name>:查看标签信息
    • git tag -a <tag_name> -m "tag_info" <commit_id>:带备注信息的标签,-a指定标签名,-m指定标签信息。
    • git tag -d <tag_name>:删除标签
    • git push origin <tag_name>:推送标签
    • git push --tags:推送所有的本地标签
    • 删除远程库的标签:
      1. git tag -d <tag_name>:删除本地标签
      2. git push origin :refs/tags/<tag_name>:删除远程标签

相关文章

网友评论

      本文标题:git常用指令

      本文链接:https://www.haomeiwen.com/subject/naxanctx.html