为什么用GIT

概述

git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。 Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发。

  • 集中式:远程服务器保存所有版本,用户客户端有某个版本1231
  • 分布式:远程服务器保存所有版本,用户客户端有所有版本

Git本身完全可以做到版本控制,但其所有内容以及版本记录只能保存在本机,如果想要将文件内容以及版本记录同时保存在远程,则需要结合GitHub来使用。使用场景:

  • 无GitHub:在本地 .git 文件夹内维护历时文件
  • 有GitHub:在本地 .git 文件夹内维护历时文件,同时也将历时文件托管在远程仓库

实际场景

版本控制,脱离目录管理

工作区:当前开发程序所在目录称为工作区,即:工作开发都是在该目录,该区域的文件会有状态的变化且状态由git自动检测,如果程序中文件做任何操作(增、删、改),文件状态均会被检测到,可以使用 【git status】命令查看。

版本库:工作区检测到有文件发生变化,那么意味着较上一个版本之后对程序进行了修改,修改完成之后,可以当做下一版本进行提交,那么就是执行 【git add .】 将所有文件提交到暂存区,然后再执行【git commit -m ‘又一个版本’】提交到版本库的分支即可,之后可以使用【git log】命令查看版本记录。

原内容(工作区) -- 自动检测 --> 
修改后的内容(工作区) -- git add --> 
暂存(版本库) -- git commit --> 
分支(版本库)
  • git init,初始化,表示即将对当前文件夹进行版本控制。
  • git status,查看Git当前状态,如:那些文件被修改过、那些文件还未提交到版本库等。
  • git add 文件名,将指定文件添加到版本库的暂存状态。
  • git commit -m ‘提交信息’,将暂存区的文件提交到版本库的分支。
  • git log,查看提交记录,即:历史版本记录

以前用 python 需要大家互相传递修改的文件夹,由一人统一进行合并,少数人还可以,一旦人多了简直没法管理,且没有版本控制,只能像 LinkedList 而不是 Arrays 可以跳到任意下标

暂存

7月上线产品,继续开发到8月,结果线上产品出错,怎么办?

1.拷贝线上代码(上哪拷贝?太原始)
2.通过git

stash

stash用于将工作区发生变化的所有文件获取临时存储在“某个地方”,将工作区还原当前版本未操作前的状态;stash还可以将临时存储在“某个地方”的文件再次拿回到工作区。

  • git stash 将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
  • git stash list 查看“某个地方”存储的所有记录
  • git stash clear 清空“某个地方”
  • git stash pop 将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
  • git stash apply 编号, 将指定编号记录从“某个地方”重新拿到工作区(可能有冲突)
  • git stash drop 编号,删除指定编号的记录

branch

分支,默认仅有一个名为master的分支。一般开发新功能流程为:开发新功能时会在分支dev上进行,开发完毕后再合并到master分支。

  • git branch 分支名称 创建分支
  • git checkout 分支名称 切换分支
  • git branch -m 分支名称 创建并切换到指定分支
  • git branch 查看所有分支
  • git branch -d 分支名称 删除分支
  • git merge 分支名称 将指定分支合并到当前分支

云与协作

Github、Gitlab、Gitee

  • 先 git pull origin master 然后 git push origin master
  • 先 git fetch origin master 然后 git merge origin/master 再 git push origin master
  • 先 git fetch origin master 然后 git rebase origin/master 再 git push origin master
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值