版本控制器-git

引言

不知道你⼯作或学习时,有没有遇到这样的情况:我们在编写各种⽂档时,为了防止文档丢失,更改失误,失误后能恢复到原来的版本,不得不复制出⼀个副本,比如:

"报告-v1"

"报告-v2"

"报告-v3"

"报告-确定版"

"报告-最终版"

"报告-究极进化版"

...

每个版本有各自的内容,但最终会只有⼀份报告需要被我们使用 。

但在此之前的⼯作都需要这些不同版本的报告,于是每次都是复制粘贴副本,产出的⽂件就越来越

多,文件多不是问题,问题是:随着版本数量的不断增多,你还记得这些版本各自都是修改了什么

吗?

文档如此,我们写的项目代码,也是存在这个问题的!!

1.git

1.1git是什么

为了能够更方便我们管理这些不同版本的⽂件,便有了版本控制器。所谓的版本控制器,就是能让你了解到⼀个文件的历史,以及它的发展过程的系统。通俗的讲就是⼀个可以记录⼯程的每⼀次改动和 版本迭代的⼀个管理系统,同时也方便多⼈协同作业。 目前最主流的版本控制器就是 Git 。Git 可以控制电脑上所有格式的⽂件,例如 doc、excel、dwg、 dgn、rvt等等。对于我们开发⼈员来说,Git 最重要的就是可以帮助我们管理软件开发项目中的源代码文件

1.2git安装

bash 复制代码
yum install git

1.3如何在git中下载项目到本地

首先需要在git中复制项目的链接,然后在xshell中创建好一个放置代码的目录,其中url就是我们复制的链接;

git clone---获取远端仓库

bash 复制代码
git clone [url]

1.4如何查看仓库状态

bash 复制代码
git status

M README.md # 已修改但未暂存

M index.html # 已修改并已暂存

A newfile.txt # 新增文件(已暂存)

?? untracked.c # 未跟踪文件

D deleted.txt # 已删除

1.5 如何忽略掉不想本地托管上传的文件

bash 复制代码
.gitignore

① 在项目根目录创建

bash 复制代码
touch .gitignore

② 或用编辑器创建

bash 复制代码
vim .gitignore

③基本语法规则

注释以 # 开头

忽略所有 .log 文件 *.log

bash 复制代码
secret.txt
config.ini

忽略目录(结尾加 /)

bash 复制代码
node_modules/
build/
dist/

不忽略某个特定文件(用 !)

bash 复制代码
!important.log     # 除了 important.log

忽略模式匹配

bash 复制代码
temp-*.txt        # 忽略所有 temp- 开头的 .txt 文件
*.py[cod]         # 忽略 .pyc, .pyo, .pyd 文件

1.6如何查看项目的提交历史记录

bash 复制代码
git log

显示 、在什么时候为什么(提交信息)修改了代码。

bash 复制代码
# 查看最近5次提交
git log -5 --oneline

# 查看今天的提交
git log --since="today" --oneline

# 查看本周的提交
git log --since="1 week ago"

1.7git pull

(1) git pull 是 从远程仓库拉取最新代码并合并到本地 的命令。

复制代码
git pull = git fetch + git merge
拉取更新   下载远程代码   合并到本地

(2)基本语法

bash 复制代码
git pull [远程名] [分支名]

(3)多人协作场景

bash 复制代码
# 你开始工作前
git pull origin main      # 1. 拉取最新代码

# 你编写代码...
vim file.c
git add file.c
git commit -m "添加新功能"

# 提交前再次拉取(防止冲突)
git pull origin main      # 2. 拉取别人提交的代码

# 如果有冲突,解决冲突
# git add 解决后的文件
# git commit

# 推送你的代码
git push origin main

1.8三板斧

1.8.1 git add

将代码放置在刚才下载好的目录里,将需要用git管理的文件告诉git;

bash 复制代码
git add [⽂件名]
1.8.2 git commit

Git 提交命令,将暂存区的更改保存到本地仓库。

bash 复制代码
git commit -m "提交说明"
1.8.3 git push

同步到远端服务器上

bash 复制代码
git push

需要填⼊用户名密码. 同步成功后, 刷新 Github ⻚⾯就能看到代码改动了。

总体来说,

bash 复制代码
# 1. 修改文件
vim file.c

# 2. 添加到暂存区
git add file.c

# 3. 提交到本地仓库(就是你现在问的)
git commit -m "修复bug:优化了文件读取逻辑"

# 4. 推送到远程仓库(可选)
git push
相关推荐
前进吧-程序员2 小时前
【硬核架构】IO 巅峰对决:Linux epoll vs Windows IOCP vs 新皇 io_uring
linux·服务器
路由侠内网穿透.2 小时前
本地部署家庭自动化系统 Domoticz 并实现外部访问( Linux 版本)
linux·运维·服务器·网络协议·自动化
IT北辰2 小时前
VMware Workstation虚拟机kali环境如何连接usb网卡RT3070
linux
夔曦2 小时前
Git工程日常下拉/上传完整流程(自用)
git
郝亚军2 小时前
Ubuntu启一个tcp server,client去连接
linux·服务器·数据库
岱宗夫up2 小时前
GitHub Desktop如何设置中文?这不是个简单问题
git·github
Trouvaille ~2 小时前
【Linux】UDP Socket编程实战(四):地址转换函数深度解析
linux·服务器·网络·c++·udp·socket·地址转换函数
峥嵘life2 小时前
Android16 【GSI】CtsMediaCodecTestCases等一些列Media测试存在Failed项
android·linux·运维·服务器·学习
达子6662 小时前
Ubuntu的Gparted 无法扩展内存 报错umount: /sdb1: target is busy
linux·运维·ubuntu