我们为什么要学习git?
就当下的发展而言,只要你从事开发就一定会接触git。作为最强大的分布式版本控制器,git 与 svn 有着本质上的区别。
Git是一种分布式版本控制系统,每个开发者都可以在本地维护完整的代码库,可以离线工作并提交代码。
SVN是一种集中式版本控制系统,所有代码都保存在中央服务器上,开发者需要与服务器进行交互才能进行代码管理。
/ | 分支管理 | 性能 | 历史记录 | 开发 |
---|---|---|---|---|
Git | Git鼓励频繁地创建和合并分支,使得多个功能可以同时进行开发,而不会相互干扰 | 使用了一种快照机制,每次提交都会创建一个文件的完整副本,操作速度非常快,并且占用存储空间较小 | 保留了完整的代码历史记录,包括每次提交的内容、时间和作者等信息 | 由于分布式特性,开发者可以在自己的本地分支上进行自由的实验和开发,不会影响到其他人的工作 |
SVN | 分支管理相对较为繁琐,需要手动创建和合并分支 | 记录文件的差异,操作速度较慢,同时占用的存储空间更大 | 有类似的功能,但是需要与中央服务器进行交互 | SVN的集中式特性限制了开发者的自由度,需要与服务器进行交互 |
总的来说,Git更适合具有高度分散、并行开发的项目,尤其是开源项目。SVN更适合较小规模的团队,或者需要严格控制代码访问权限的项目。选择Git还是SVN取决于项目的规模、开发模式和需求。
git 的优势包括但不仅限于以下几点:高效的分支管理、快速而便捷、强大的协作功能。
Git以命令行工具的形式提供,同时也有许多可视化工具和集成开发环境(IDE)的插件支持,使得使用Git更加方便。它广泛应用于软件开发、版本管理、代码托管等领域,它是目前最流行的版本控制系统之一。
Git是一个开源的版本控制系统,它是由Linux的创始人Linus Torvalds在2005年创建的。Git的主要目标是处理大型项目的高效管理。
本章主要教大家如何注册并使用git,我选择用命令行拆解步骤,这是为了方便大家理解底层交互。
作者:我不是费圆
概述:适用于git初学者及一般使用者,阅读本文能略微提升你对git的理解
以码云为例:https://gitee.com/
先注册账号
公钥的生成方法请点击“怎样生成公钥”
打开下面的文件目录,右键单击id_rsa.pub选择记事本打开,复制全文
添加公钥的目的是让git认识这台计算机,在提交信息时区分贡献者,
多台计算机也可以共用同一套公钥
创建完成以后复制仓库地址
打开cmd,进入到项目文件夹下
git init
初始化git 仓库
git remote add 粘贴地址
配置远程仓库,仓库名默认为 origin
git remote -v
查询远程仓库列表(有两条代表添加成功)
一条是fetch获取地址,另一条是push推送地址
fetch地址的作用:将远程仓库的分支和推送信息更新到本地
push地址的作用:用来推送或更新项目中的更改
git config --global user.name "kaixin"
git config --global user.email "21577...@qq.com"
配置标识信息
git status
查看本地文件状态
有红色文件名,意为:工作区有更改,需要暂存以防止丢失
有绿色文件名:意为:暂存区有更改,需要提交到本地仓库
git add .
将工作区的修改提交到暂存盘
git commit -m “简述”
将暂存盘里的更改提交到本地仓库
此时你git push 是推送不了的,会报如下信息:
它说:你还未跟踪远程地址,请执行以下命令设置默认跟踪地址
因为remote 可以配置多个远程仓库,即一个项目指向多个仓库
它不知道你要将更改推送到哪一个仓库,需要你告诉他
git push -u origin master
push 推送
-u 设为默认仓库
origin 仓库名
master 分支名
如果你的项目文件较多,此时推送可能会卡住
Ctrl + c 停止
在项目根目录下创建文件,全名为:
.gitignore
这类文件没有具体文件名,后缀即为名称
打开此文件,写入
.DS_Store
node_modules/
dist/
dist.*
**/*.log
.vscode
*.local
这里写入的字符作为文件名或文件夹名称被git 过滤
不会被提交到本地仓库,也不会被推送到远程
dist/
☞ 文件夹及所有子文件
*.log
☞ 所有以.log 作为后缀的文件
保存以后
git add .
暂存
git commit -m “gitignore-config”
提交
git push
推送
你的远程仓库中就生成了如下内容
为本项目添加成员,不同的角色会赋予他不同的权限。如图所示:
仓库成员首次使用码云gitee,也要配置公钥(公钥的生成方法请看前半部分)。
其次本地公钥 要与 线上公钥保持一致。
仓库成员复制仓库地址,cmd输入
git clone 仓库地址 仓库别名(可省略不写)
如:git clone https://gitee.com/avec-vous/shu-hai.git
克隆时得到的代码是默认分支上最新的
git pull origin master
拉取指定仓库,指定分支上的代码
如果git push -u
配置过默认推送地址
可以直接使用git pull
git status
查看工作区状态
未暂存的文件是红色,未提交的文件是绿色
本章到此结束
转载要注明出处哦!
推荐阅读
Git 基础命令与事件详解(基础版)
推荐下载
从 0 到 10 的 Git版本控制器入门精讲
配合Git flow 流程使用的git 操作命令指南
“我仍认为我们接受高等教育的目的是帮助我们的家乡摆脱贫困,而不是摆脱我们贫困的家乡。生如蝼蚁当有鸿鹄之志,为天地立心,为生民立命,为往圣继绝学,为万世开太平。”