科学使用git版本控制
说来有点惭愧用了1年多的git至今还没有创建过分支,主要都是把git当成一个线上同步来用。 细想起来是因为我很难集中精力细看git的说明文档,另一方面很多网上的文章说的比较晦涩抽象,很难简明扼要的吸收要点。 但是git这些强大的功能到底作用是什么? 如何和实际工作联系,怎么样简单快速的get到这些功能的意义和使用方式呢? 今天就好好get一下。
git init
“这个文件夹,被我征用了,我要用它来做我的代码版本控制,其他工作就交给git你了。”
初始化仓库 初始化之后,git就会在这里生根发芽。
git clone git@xx.com/sth.git folder
“快帮我建一个和sth一样的仓库,放到folder文件夹就行了。(嗯,仓库我还没建,你看着办)”
克隆仓库到文件夹 如果对这个仓库的历史数据不感兴趣,使用--depth n告诉git,别搞这么沉重,我只关心他现在的样子。 不指定文件夹的话、git会默认使用master自动创建。 git clone --depth 1 git@xx.com/sth.git folder
git pull git@xx.com/sth.git folder
“帮我把sth的最新的代码搬过来,放在我仓库的folder文件夹里就行。(我喜欢的就是我的)”
从仓库拉取数据
git add file1 file2 file3
“这几个文件以后麻烦多照顾啦。”
让仓库追踪文件。 添加追踪之后,每次文件变化都会被git检查。 git add . (自动添加全部未跟踪的文件)
git status
“魔镜魔镜告诉我,我都对这些代码做了什么修改呀?”
显示当前的文件状态。
git commit
“那就让来我告诉你,这些文件的修改都有什么非同凡响的意义。”
标记当前变化的注释 命令行中需要单独输入commit的具体内容,输入完成后保存,如mac使用 shift+; 然后 wq。
git branch branchName
创建一个分支,意思是: “hi git,把现在的代码库做个时空胶囊,名字叫branchName”(记得单机游戏的存档吗?) 创建完分支,我们可以随时回到当时那个状态,当然也可以在那个时空胶囊的基础上继续发展、产生新的历史~~
git checkout branchName
进入某个分支,意思是:“请把我带回到branchName的时候,我要去创造那个时空的代码啦。” 主分支默认叫master 回到主线使用 git checkout master
相关文章
- 一些 Shell 脚本的基本概念
- Nacos在企业中如何使用集群环境?
- MacOS 和 Linux 有什么区别?
- Windows 11系统完美了?这些小工具才是我的最爱
- OHOS标准系统的SAMGR代码解读(v3.1)--1--Safwk
- Golang用Proto文件同时生成gRPC和HTTP
- 你需要知道的内核总线架构
- ArkUI Service Ability开发实战详解
- 如何用 Kubernetes 自定义资源?一文聊聊 CRD
- OpenHarmony设备开发之基于TCP遥控小车
- 使用FeatureAbility模块启动其他Ability
- 深度解析 Go 泛型版排序比 sort 包更快吗?
- 如何配置 Git 提交代码检查?
- 边缘渲染是如何提高前端性能的?
- 这款 Linux!让每个人都能轻松使用 Debian
- 一篇文章带你了解Go语言基础之切片补充
- 如何优雅的对 Docker 容器进行健康检查
- Linux Web 服务器 NGINX 的三个优秀替代方案
- Ubuntu 和 Manjaro:比较两种不同的 Linux 发行版体验
- Linux Kernel运行时安全检测之LKRG-实践篇