Git快速入门
一 git基本介绍
1.1简介:免费 开源的 版本分布式控制系统,主要用于记录文件内容变化,查阅历史版本 ,团队协作等。
1.2使用环境:支持mac windows linux/unix 操作系统使用
1.3工作机制如下图:
- 本地库(Repository):Git将代码和版本信息存储在一个称为仓库的地方,并提供对代码的追踪和管理。
- 工作区(Working Directory):在Git中,项目代码存储在称为工作区的目录中。工作区就是本地的项目文件夹。
- 暂存区(Staging Area):当对项目进行更改时,Git提供了一个中间区域,称为暂存区。可以将更改的文件添加到暂存区,以准备进行提交。
另外会涉及到一些相关概念 需要注意:
- 提交(Commit):一旦你将文件添加到暂存区,你可以进行提交操作。提交会创建一个新的版本,并将暂存区中的更改保存到-Git的历史记录中,以便之后可以回溯和恢复。
- 分支(Branch):Git允许你创建不同的分支来同时开发多个功能。每个分支都是基于主分支(通常是master或main分支)的拷贝,可以独立地进行开发和修改。
1.4 安装
根据不同的操作系统下载不同版本的git客户端
下载官网:https://git-scm.com/
二 git常用命令
名称 | 作用 |
---|---|
git config --global user.name 用户名 | 设置用户签名 |
git config --global user.email 邮箱 | 设置用户签名 |
git init | 初始化本地仓库 |
git status | 查看本地库状态 |
git add 文件名 | 添加缓存区 |
git commit -m “文件信息” 文件名 | 提交本地仓库 |
git reflog | 查看历史记录 |
git log | 查看更详细的历史记录 |
git reset --hard 版本号 | 版本穿梭 |
2.1 设置用户签名
用户签名首次必须设置一次 否则不知道是谁提交到代码 用于区分作者 ,另外邮箱可以非真实存在 git不会去验证,一种身份符号
2.2 初始化本地仓库 init
要用git管理目录,首先要获取当前目录到管理权,可以新建一个文件夹,cd进去后执行初始化后会生成一个 .git 隐藏的目录,可以用ls -a 去查看
2.3 查看本地状态 status
第一行 提示当前在 master 分支中
第二行 目前还没有东西提交 空的git库
第三行 当前目录没有创建任何文件 也没有任何需要提交的文件
如下图:
另外在当前目录创建文件后没有被添加到缓存区,也就是git没有追踪的文件,会用红色字体表示,如图:
2.4 添加到暂存区 add
git add 文件名
添加后再次查看日志, 文件名由原红色变为绿色 表示git追踪到文件。
被追踪到的文件是可以删掉的 按照终端提示即可,这里只是删除暂存区的文件,不代表删除工作区的文件, 删除暂存区的文件后 文件名又会变成红色, 想要提交到本地仓库 需要重新add追踪。
2.5 提交本地库 commit
将暂存区的文件提交到本地仓库 形成版本
语法 : git commit -m “文件日志信息” 文件名
提交后再次查看本地状态 :
第一行:当前提交在master分支
第二行:既没有提交,又没有修改, 工作树是干净的
**2.6 查看版本信息 reflog && log **
执行 git reflog 可以查看提交到历史版本信息 ,如图:
其中16ed496是版本号 first commit 是版本名 也就是提交文件 自定义的文件日志信息
(head -> master) 表示 当前指针指向master分支
还可以用 git log 查看更详细的信息,除版本以外还获取到对应的用户签名信息,如图:
这里面的版本号是完整的版本号, reflog的版本号查看是前几位。
2.7 修改文件
通过vim 修改提交过的文件后 ,再次查看状态:
状态变更,提示文件被修改,信息是红色的,还没有被追踪, 需要重新追踪提交。
重新提交提示 相关变更的部分
由于git是按照行来维护的 ,所以修改一行 会提示删除一行 增加一行。
再次查看版本信息 可以看到2个版本,如图:
当前指针指向了 第二个版本了,
只要有文件修改 本地库状态就会变更
2.8 版本穿梭
语法:git reset --hard 版本号
切回 历史版本, 先通过日志查看历史版本,复制下要切回历史版本的号,执行后如图:
指针发生偏移;指向 对应版本号的文件, 同时文件内容也会回滚到修改之前对应版本的文件内容
版本穿梭,不是复制副本,而是内存中记录很多版本信息,通过调用指针 指向不同版本 ,head是移动的指针,指向哪里 文件会穿梭 到内存中记录的对应版本内容
作者:静思己过_1
版权:本文版权归作者和csdn共有
出处:原创文章
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任