git 最最经常用的命令

git 已经是一个流行的分布式版本控制管理系统。如果你还不知道它是什么,建议你去了解下它的历史。如果你已经在使用了,那么这里认为你已经对他有所了解,只是需要再熟悉一些常常常用的命令。

先简单说下 git 的几个区域,假设我们有个目录 git_learn,大致结构如下

git_learn/

├── dir1/
│ ├── .git
│ └── a.txt
│ └── README.txt

目录中,.git 是一个隐藏文件夹。这个可自行查看被 git 管理的目录。
git_learn 这个目录是工作区
工作区:当前操作文件的目录
版本库:当前工作区的隐藏目录 .git 文件夹

  • 初始化本地 git 库
    git init

  • 新增文件
    git add a.txt
    说明:文件 a.txt 被添加到暂存区

  • 把文件提交到仓库
    git commit -m '描述本次修改'
    说明:提交更改,把暂存区的所有内容提交到当前分支(本地库)

  • 查看当前分支状态
    git status

  • 查看提交历史
    git log
    简化显示的参数:–pretty=oneline
    git log --pretty=oneline
    说明: 看看每次提交了什么

  • 时光机,回退到上个版本,当前版本为 HEAD,上一个版本为 HEAD^,
    上上个版本为 HEAD^^ , 如果要回退 10 个版本可以写成 HEAD~10
    git reset --hard HEAD^
    如果想再找回回退的内容,指定那个版本号就可以了,前提是你得记住他
    git reset --hard 787fb59

  • 命令历史
    如果忘记了之前的版本好也不要紧,可使用命令历史
    git reflog

  • 查看工作区和版本库文件内容的区别
    git diff HEAD -- README.txt

  • 如果工作区文件内容变化,想丢掉工作区的内容
    新版本写法:git restore README.txt
    这个也可以:git checkout -- README.txt

  • 撤销暂存区的内容
    新版本写法:git restore --staged README.txt
    这个也可以:git reset HEAD README.txt

  • 删除文件

    • 新增一个文件 touch del.txt
      git add del.txt
      git commit -m 'add del.txt'
    • 删除工作区文件
      rm del.txt
    • 从版本库删除文件
      git rm del.txt
    • 提交删除
      git commit -m 'remove del.txt'
    • 在删除未提交前,可以通过
      git restore --staged del.txt 恢复暂存文件
      继续通过 git restore del.txt恢复工作区的更改
  • 分支管理

    • 新建 dev 分支:
      git branch dev

    • 切换到 dev 分支:
      git checkout dev

    • 一步到位:
      git checkout -b dev

    • 新版本也可以使用 switch 切换分支:
      git switch master

    • 创建新分支 dev :
      git switch -c dev

    • 查看当前分支:
      git branch显示带 * 号的就是当前分支

    • 切换回 master 分支:
      git checkout master

    • 合并 dev 分支到 master:
      git merge dev

    • 删除分支:
      git branch -d dev

  • 查看远程库信息
    git remote -v

  • 解除与远程库的关系
    git remote rm origin

  • 关联远程库:
    git remote add origin git@server-name:path/repo-name.git
    说明:关联一个远程库时必须给远程库指定一个名字,origin是默认习惯命名;

  • 第一次推送 master 分支所有内容
    git push -u origin master

  • 克隆远程库:
    git clone git@server-name:path/repo-name.git

  • stash,如果你正在一个分支开发需求时,但有个紧急 bug 需要修复,那么就可以把当前内容进行 stash,当 bug 修复完,再恢复 stash 的内容

    • 暂存你的工作内容
      git stash
    • 查看暂存的内容
      git stash list
    • 恢复暂存
      git stash apply(保留暂存),
      git stash drop(删除 stash)
      git stash pop(一步到位,恢复并删除)
    • 如果有多次的 stash,可以先看列表 git stash list
    • 如果有指定恢复:git stash apply stash@{0}
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值