平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Git分布式版本控制工具采用”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
一、Git简介
(一)什么是Git
结合项目来看,Git是一个开源的分布式版本控制系统,最初由Linus Torvalds开发,用来管理Linux内核的开发。
从实现思路看,它能够高效地处理从小型到大型项目的版本管理,兼容更快分支切换和合同时,广泛应用来软件开发、运维等领域。
(二)版本控制系统的作用
落到代码里,版本控制系统用来跟踪文件和目录的变更历史,便于团队协作开发、代码管理、版本回溯和问题追踪。
它解决了开发过程中常用的代码丢失、版本混乱、多人协作冲突等问题。
二、Git的安装与设置(CentOS系统)
(一)安装Git
在CentOS系统上,能够借助以下步骤安装Git:
更新系统包 执行以下命令更新系统包:
sudo yum update
安装Git 采用yum包管理器安装Git:
sudo yum install git
验证安装 完成后安装,借助以下命令验证Git是否安装成功:
git --version
若安装成功,将显示Git的版本信息。
(二)设置Git
安装完成后,需进行一些基本设置,以便在提交代码时记录正确的用户信息。
设置用户名称和邮箱 执行以下命令设置全局用户名和邮箱:
git config --global user.name "your_username"
git config --global user.email "[email protected]"
查看设置信息 能够借助以下命令查看当前的设置信息:
git config --list
设置别名(可选) 结合项目来看,为便于便于采用,能够为常用的Git命令设置别名。编辑~/.gitconfig文件,添加以下内容:
[alias]
st = status
co = checkout
ci = commit
br = branch
hist = log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
type = cat-file -t
dump = cat-file -p
解决乱码问题 若在CentOS系统中遇到Git输出乱码问题,能够借助以下命令解决:
git config --global core.quotepath false
三、Git的基本操作
(一)初始化本地仓库
新建目录 在任意位置新建一个空目录作为本地Git仓库:
mkdir my_project
cd my_project
初始化仓库 执行以下命令初始化Git仓库:
git init
查看隐藏的.git目录 落到代码里,初始化成功后,能够在目录下看到隐藏的.git目录:
ls -a
(二)工作流程图解

在这个场景下,图中展示了Git的工作流程,包括工作区(workspace)、暂存区(index)和仓库(repository)之间的关系。
- 工作区(workspace):当前项目的文件夹。
- 暂存区(index):一个准备提交到仓库的文件的缓存区域。
- 仓库(repository):保存项目所有历史提交的地方。
(三)基础操作指令
查看修改状态 查看当前工作区和暂存区的状态:
git status
添加文件到暂存区 将工作区的文件添加到暂存区:
git add <file_name>
或者将所有修改添加到暂存区:
git add .
提交暂存区到本地仓库 提交暂存区的内容到本地仓库,并添加提交信息:
git commit -m "Your commit message"
查看提交日志 查看提交历史记录:
git log
采用别名git-log能够以更简洁的方式显示提交记录。
版本回退 回退到指定的提交版本:
git reset --hard <commit_id>
添加文件到忽略列表 新建.gitignore文件,列出需忽略的文件模式。比如:
*.log
build/
(四)分支操作
查看本地分支 查看当前本地的所有分支:
git branch
新建本地分支 新建一个新的分支:
git branch <branch_name>
切换分支 切换到指定的分支:
git checkout <branch_name>
新建并切换分支 直接新建并切换到一个新的分支:
git checkout -b <branch_name>
合并分支 将一个分支的提交合并到当前分支:
git merge <branch_name>
删除分支 删除本地分支:
git branch -d <branch_name>
解决冲突 从实现思路看,当合同时分支时发生冲突,需手动编辑冲突文件,然后将解决后的文件添加到暂存区并提交。
(五)远程仓库操作
添加远程仓库 将本地仓库与远程仓库关联:
git remote add origin <remote_repository_url>
查看远程仓库 查看当前关联的远程仓库:
git remote -v
推送到远程仓库 将本地分支的修改推送到远程仓库:
git push -u origin <branch_name>
克隆远程仓库 从远程仓库克隆代码到本地:
git clone <remote_repository_url>
拉取远程仓库的修改 将远程仓库的修改拉取到本地并自动合并:
git pull origin <branch_name>
解决合并冲突 若在拉取或合同时时发生冲突,需手动解决冲突,然后提交。
四、Git在运维中的应用
(一)设置管理
理解这一步时,Git能够用来管理设置文件的版本,便于运维人员跟踪设置的变更历史,更快回滚到之前的版本。
(二)自动化部署
落到代码里,结合Git钩子(Hooks)和CI/CD工具(如Jenkins),能够完成代码提交后的自动化部署。
(三)团队协作
运维团队能够采用Git进行协作,管理服务器设置、脚本等,提高工作效率。
五、常用问题及解决方法
(一)无法新建隐藏文件
在Linux系统里,能够借助以下命令新建隐藏文件:
touch .gitignore
(二)无法看到隐藏文件
在Linux系统里,能够借助以下命令查看隐藏文件:
ls -a
(三)SSH密钥设置问题
从实现思路看,若在采用SSH连接远程仓库时遇到问题,能够借助以下步骤生成SSH密钥并添加到远程仓库的SSH密钥管理中:
生成SSH密钥:
ssh-keygen -t rsa -C "[email protected]"
将生成的公钥添加到远程仓库的SSH密钥管理中:
cat ~/.ssh/id_rsa.pub
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多兼容脚本之家。
- Git分布式版本控制工具采用及说明
- Java基础篇之分布式版本控制工具Git
- 详解spring cloud config整合gitlab搭建分布式的设置中心