Git 常用的命令之避免尴尬

今天在代码的合并中出现了原本不该出现的错误,这令我非常尴尬!!! 完全不应该出现的错误,然后在懵逼的状态中同事美女同事帮忙搞定的!尴尬倒还好,毕竟我脸皮够厚! 最重要的耽误其他同事的下班时间。毕竟已经很晚了,车有不好叫… 在这里老哥对部门同事道歉了(这算是公开道歉吗… … )!
整理一下今天的低级错误归根就是对git的命令不够熟悉所导致的,也怪我之前公司没有用够git,(小破老的公司,都是一人独立开发的小系统)然后也没有认真的学习git的使用。今天我就整理一下,后续会更新,今天是比较基础的一些操作和命令,还有分享一些git工具。

Git的工作流程

一般的工作流程如下:

  • 克隆Git资源作为工作目录
  • 在克隆的资源上添加或修改文件
  • 如果其他人修改了,可以更新资源
  • 在提交前查看修改
  • 提交修改
  • 在修改完成后,如果发现错误,可以撤回提交并在次修改提交
    在这里插入图片描述
Git 工作区、暂存区和版本库
基本概念
  • 工作区:就是你在电脑上看到的目录
  • 暂存区:英文叫stage,或者index。一般存放在“.git”目录下的index文件(.git/index)中。
  • 版本库:工作区有一个隐藏目录.git,这个不算工作区,而是git的版本库。

在这里插入图片描述
图中左侧为工作区,右侧为版本库。在版本库中标记为“index”的区域是暂存区(stage,index),标记为“master”的是master分支所代表的数目录。
图中可以看出此时“HEAD”实际指向master分支的一个游标。所有图中的命令中出现HEAD的地方可以用master来替换。
图中的objects标识的区域为Git的对象库,实际位于“.git/objects”目录下,里面包含了创建的各种对象及内容。
当对工作区修改(或新增)的文件执行git add 命令时,暂存区的目录树被更新,同时工作区修改(或新增)的文件内容被写入到对象库中一个新的对象中,而该对象的ID被记录在暂存区的文件索引中。
当执行提交操作git commit 时,暂存区的目录树写到版本库(对象库)中,master分支会做相应的更新。 即master执行向的目录树就是提交时暂存区的目录树。
当执行git reset HEAD 命令时,暂存区的目录树会被重写,被master分支指向的目录树锁替换,但是工作区不受影响。
当执行git checkout HEAD或者git checkout head <file>命令时,会用HEAD指向的master分支中的全部或者部分文件替换暂存区和以及工作区中的文件,这个命令也是极其危险的,因为不但会清除工作区中为提交的改动,也会清除暂存区中未提交的改动。

git 的常用命令

git status 查看修改过得文件
git add -all 全部暂存
git add . 全部暂存
git commit 提交到当前分支
git commit -m 添加user信息 提交并描述修改内容
git pull 下拉
git push 推送
git checkout dev 切换到dev分支
git pull 下拉
git push 推送
git merge my_branch dev合并my_branch分支
git checkout my_branch 切换到my_branch分支

git checkout -b new_branch 创建新的分支 new_branch 并切换到new_branch分支
git branch -d new_breanch 删除new_branch分支

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值